White Rose University Consortium logo
University of Leeds logo University of Sheffield logo York University logo

Huge data but small programs: visualization design via multiple embedded DSLs

Duke, D.J., Borgo, R., Runciman, C. and Wallace, M. (2009) Huge data but small programs: visualization design via multiple embedded DSLs. In: Practical Aspects of Declarative Languages : 11th International Symposium, PADL 2009, Savannah, GA, USA, January 19-20, 2009, Proceedings. Lecture Notes in Computer Science (5418). Springer , pp. 31-45. ISBN 978-3-540-92994-9

Full text available as:

[img]
Preview
PDF - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
380Kb

Published Version: http://dx.doi.org/10.1007/978-3-540-92995-6_3

Abstract

Although applications of functional programming are diverse, most examples deal with modest amounts of data -- no more than a few megabytes. This paper describes how Haskell has been used to address a challenging visualization problem, involving 200 time steps from an astrophysics simulation of early star formation. Each individual step involves nearly 40 million samples, and uncompressed the complete dataset is nearly a terabyte.

Our solution makes novel and extensive use of domain specific languages to specify data resources, rendering abstractions, and most significantly, the desired visualization. The result is a powerful framework for multi-field visualization, including the use of animation to explore the evolution of data over time. This approach represents a significant departure from standard practices in visualization, and has applications well beyond the original problem. That our solution consists of less than 4.5K lines of code is itself a notable result. This paper motivates and describes the overall architecture of our solution, and technical features of the DSLs that are used in place of the traditional visualization pipeline. We conclude with thoughts on how functional technologies may find even broader use within other branches of visualization.

Item Type:Book Section
Copyright, Publisher and Additional Information:© 2009 Springer. This is an author produced version of a paper published in 'Lecture Notes in Computer Science'. Uploaded in accordance with the publisher's self-archiving policy.
Academic Units:The University of Leeds > Faculty of Engineering (Leeds) > School of Computing (Leeds)
The University of York > Computer Science (York)
ID Code:5000
Deposited By:Mrs Irene Rudling
Deposited On:22 Dec 2008 09:52
Last Modified:04 Mar 2009 09:50
Published Version:http://dx.doi.org/10.1007/978-3-540-92995-6_3
Status:Published
Publisher:Springer
Refereed:Yes
Identification Number:doi:10.1007/978-3-540-92995-6_3

Archive Staff Only: edit this record