MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Arrays in a lazy functional language -- a case study: the fast Fourier transform (1992) [10 citations — 6 self]

Download:
pdf | ps
by Pieter H. Hartel, Willem G. Vree
2nd Arrays, functional languages, and parallel systems (ATABLE
ftp://ftp.wins.uva.nl/pub/computer-systems/functional/reports/ATABLE92_fft.ps.Z
Add To MetaCart

Abstract:

The array plays a prominent role in imperative programming languages because the data structure bears a close resemblance to the mathematical notion of a vector and because array operations can be implemented efficiently. Not all lazy functional languages offer arrays as a primitive data structure because laziness makes it difficult to implement arrays efficiently. We study 8 different versions of the Fast Fourier Transform, with and without arrays, to assess the importance of arrays in a lazy functional language. An efficient implementation of arrays contributes significantly to the performance of functional languages in certain areas. However, a clear distinction should be made between array construction and array subscription. In the FFT example we could not gain efficiency by using array construction, other than for storing precomputed data like the input. Using array subscription improves performance. 1

Citations

694 Parallel Program Design: A Foundation – Chandy, Misra - 1988
496 S.: The Implementation of Functional Programming Languages – Jones - 1987
289 Tukey, “An algorithm for the machine calculation of complex Fourier series – Cooley, W - 1965
108 Numerical Recipes: The Art of Scientific Computing (Cambridge – Press, Flannery, et al. - 1989
65 editors. Report on the Programming Language Haskell 98, A Non-strict Purely Functional Language – Jones, Hughes - 1999
29 Update analysis and the efficient implementation of functional aggregates – Bloss - 1989
20 Compilation of Functional Languages using Flow Graph Analysis – Hartel, Glaser, et al. - 1994
11 On the benefits of different analyses in the compilation of functional languages – Hartel, Glaser, et al. - 1991
10 system manual – Miranda - 1990
5 Functional programming and the language TALE – Barendregt, Leeuwen - 1985
3 Performance of lazy combinator graph reduction – Hartel - 1991
3 Performance of lazy combinator graph reduction. Software---practice and experience – Hartel - 1991