Abstract
We extend the flattening transformation, which turns nested into flat data parallelism, to the full higher-order case, including lambda abstractions and data parallel arrays of functions. Our central observation is that flattening needs to transform the closures used to represent functional values. Thus, we use closure conversion before flattening and introduce array closures to represent arrays of functional values.
Partly funded by the Australian Research Council under grant number DP0211203.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Blelloch, G.E.: Vector Models for Data-Parallel Computing. MIT Press, Cambridge (1990)
Blelloch, G.E.: Programming parallel algorithms. CACM 39(3), 85–97 (1996)
Chakravarty, M.M.T., Keller, G.: More types for nested data parallel programming. In: Wadler, P. (ed.) 5th ACM SIGPLAN Intl. Conf. on Functional Programming (ICFP 2000), pp. 94–105. ACM Press, New York (2000)
Chakravarty, M.M.T., Keller, G.: An approach to fast arrays in Haskell. In: Jeuring, J., Jones, S.L.P. (eds.) AFP 2002. LNCS, vol. 2638. Springer, Heidelberg (2003)
Chakravarty, M.M.T., Keller, G., Lechtchinsky, R., Pfannenstiel, W.: Nepal - nested data parallelism in haskell. In: Sakellariou, R., Keane, J.A., Gurd, J.R., Freeman, L. (eds.) Euro-Par 2001. LNCS, vol. 2150, pp. 524–534. Springer, Heidelberg (2001)
Leshchinskiy, R.: Higher-Order Nested Data Parallelism: Semantics and Implementation. PhD thesis, Technische Universität Berlin (2005)
Minamide, Y., Morrisett, G., Harper, R.: Typed closure conversion. In: POPL 1996: Proc. of the 23rd ACM SIGPLAN-SIGACT Sym. on Principles of Programming Languages, pp. 271–283. ACM Press, New York (1996)
Wadler, P.: Theorems for free! In: FPCA 1989: Proceedings 4th International Conference on Functional Programming Languages and Computer Architecture, pp. 347–359. ACM Press, New York (1989)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Leshchinskiy, R., Chakravarty, M.M.T., Keller, G. (2006). Higher Order Flattening. In: Alexandrov, V.N., van Albada, G.D., Sloot, P.M.A., Dongarra, J. (eds) Computational Science – ICCS 2006. ICCS 2006. Lecture Notes in Computer Science, vol 3992. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11758525_122
Download citation
DOI: https://doi.org/10.1007/11758525_122
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-34381-3
Online ISBN: 978-3-540-34382-0
eBook Packages: Computer ScienceComputer Science (R0)