Higher order flattening

  • Authors:
  • Roman Leshchinskiy;Manuel M. T. Chakravarty;Gabriele Keller

  • Affiliations:
  • School of Computer Science and Engineering, Programming Languages and Systems, University of New South Wales, Australia;School of Computer Science and Engineering, Programming Languages and Systems, University of New South Wales, Australia;School of Computer Science and Engineering, Programming Languages and Systems, University of New South Wales, Australia

  • Venue:
  • ICCS'06 Proceedings of the 6th international conference on Computational Science - Volume Part II
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

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.