[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1411204.1411256acmconferencesArticle/Chapter ViewAbstractPublication PagesicfpConference Proceedingsconference-collections
research-article

Experience report: visualizing data through functional pipelines

Published: 20 September 2008 Publication History

Abstract

Scientific visualization is the transformation of data into images. The pipeline model is a widely-used implementation strategy. This term refers not only to linear chains of processing stages, but more generally to demand-driven networks of components. Apparent parallels with functional programming are more than superficial: e.g. some pipelines support streams of data, and a limited form of lazy evaluation. Yet almost all visualization systems are implemented in imperative languages. We challenge this position. Using Haskell, we have reconstructed several fundamental visualization techniques, with encouraging results both in terms of novel insight and performance. In this paper we set the context for our modest rebellion, report some of our results, and reflect on the lessons that we have learned.

Supplementary Material

JPG File (1411256.jpg)
index.html (index.html)
Slides from the presentation
ZIP File (p379-slides.zip)
Supplemental material for: Experience report: visualizing data through functional pipelines
Audio only (1411256.mp3)
Video (1411256.mp4)

References

[1]
R. Borgo, D. Duke, M. Wallace, and C. Runciman. Multi-cultural visualization: How functional programming can enrich visualization (and vice versa). In Proc. Vision, Modeling, and Visualization, pages 245--252. IOS Press, 2006.
[2]
D. Duke, M. Wallace, R. Borgo, and C. Runciman. Fine-grained visualization pipelines and lazy functional languages. Transactions on Visualization and Computer Graphics, 12(5):973--980, 2006.
[3]
Andrew Gill. Cheap Deforestation for Non-strict Functional Languages. PhD thesis, Glasgow, 1996.
[4]
R.B. Haber and D. McNabb. Visualization idioms: A conceptual model for scientific visualization systems. In Visualization in Scientific Computing. IEEE Computer Society Press, 1990.
[5]
C.C. Law, W.J. Schroeder, K.M. Martin, and J. Temkin. A multi-threaded streaming pipeline architecture for large structured data sets. In Proceedings of Visualization '99, pages 225--232. IEEE Computer Society Press, 1999.
[6]
W.E. Lorensen and H.E. Cline. Marching cubes: A high resolution 3D surface construction algorithm. In Proceedings of SIGGRAPH'87, pages 163--169. ACM Press, 1987.
[7]
Conor McBride. Faking it: Simulating dependent types in Haskell. Journal of Functional Programming, 12(4&5):375--392, 2002.
[8]
B.H. McCormick, T.A. DeFanti, and M.D. Brown. Visualization in scientific computing. Computer Graphics, 21(6), 1987.
[9]
P.J. Moran and C. Henze. Large field visualization with demand-driven calculation. In Proceedings of Visualization'99, pages 27--33. IEEE Computer Society Press, 1999.
[10]
W. Schroeder, K. Martin, and B. Lorensen. The Visualization Toolkit: An Object-Oriented Approach to 3D Graphics. Prentice Hall, second edition, 1998.
[11]
C. Upson, T. Faulhaber Jr, D. Kamins, D. Laidlaw, D. Schlegel, J. Vroom, and A. van Dam. The application visualization system: A computational environment for scientific visualization. Computer Graphics and Applications, 9(4):30--42, 1989.

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICFP '08: Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
September 2008
422 pages
ISBN:9781595939197
DOI:10.1145/1411204
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 43, Issue 9
    ICFP '08
    September 2008
    399 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/1411203
    Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 September 2008

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Haskell
  2. evaluation
  3. pipeline
  4. streaming
  5. visualization

Qualifiers

  • Research-article

Conference

ICFP08
Sponsor:

Acceptance Rates

Overall Acceptance Rate 333 of 1,064 submissions, 31%

Upcoming Conference

ICFP '25
ACM SIGPLAN International Conference on Functional Programming
October 12 - 18, 2025
Singapore , Singapore

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)1
Reflects downloads up to 22 Dec 2024

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media