(Enter summary)
Abstract: This paper introduces a new approach to compiling array algorithms in functional languages. We are specifically aiming at an efficient implementation of irregular array algorithms that are hard to implement in conventional array languages such as Fortran. We optimise the storage layout of arrays containing complex data structures and reduce the runtime of functions operating on these arrays by means of equational program transformations. In particular, this paper discusses a novel form of... (Update)
Context of citations to this paper: More
...can be improved. The circuit that we design here is not new; it is related to (though di#erent from) a circuit by Ladner and Fischer [7] (1980) and the particular variation that we develop is essentially the same as the one presented in the well known textbook on algorithms...
.... C [2,6] The vectorised code, moreover, uses collection oriented array operations that enable a variety of further optimisations [13,14]. For the functional array language Nesl, Blelloch [3] has demonstrated how a languagebased cost model facilitates the development of parallel...
Cited by: More
Playing by the Rules: Rewriting as a practical.. - Jones, Tolmach, Hoare (2001)
(Correct)
An Approach to Fast Arrays in Haskell - Chakravarty, Keller (2002)
(Correct)
Towards a Modular Program Derivation via Fusion and Tupling - Chin, Hu (2002)
(Correct)
Active bibliography (related documents): More All
1.5: Nepal - Nested Data-Parallelism in Haskell - Chakravarty, Keller, al. (2001)
(Correct)
1.1: More Types for Nested Data Parallel Programming - Chakravarty, Keller (2000)
(Correct)
0.6: Costing Parallel Programs as a Function of Shapes - Jay (1999)
(Correct)
Similar documents based on text: More All
0.7: Costing Nested Array Codes - Lechtchinsky, Chakravarty, Keller
(Correct)
0.4: Associated Types with Class - Chakravarty, Keller, Jones, Marlow (2005)
(Correct)
0.3: The Pros and Cons of Teaching Purely Functional Programming .. - Chakravarty, Keller
(Correct)
Related documents from co-citation: More All
5: A short cut to deforestation
- Gill, Launchbury et al. - 1993
3: OPAL: Design and implementation of an algebraic programming language
- Didrich, Fett et al. - 1994
3: The TAMPR program transformation system: Design and applications
- Boyle, Harmer et al. - 1997
BibTeX entry: (Update)
Chakravarty, M. and G. Keller, Functional array fusion, in: ACM SIGPLAN International Conference on Functional Programming (ICFP'01) (2001). http://citeseer.ist.psu.edu/chakravarty01functional.html More
@inproceedings{ chakravarty01functional,
author = "Manuel M. T. Chakravarty and Gabriele Keller",
title = "Functional Array Fusion",
booktitle = "International Conference on Functional Programming",
pages = "205--216",
year = "2001",
url = "citeseer.ist.psu.edu/chakravarty01functional.html" }
Citations (may not include all citations):
324
Deforestation: Transforming programs to eliminate trees
- Wadler - 1990
186
Compiling polymorphism using intensional type analysis
- Harper, Morrisett - 1995
161
A short cut to deforestation
- Gill, Launchbury et al. - 1993
90
Programming parallel algorithms
- Blelloch - 1996
79
Shortcut deforestation in calculational form
- Takano, Meijer - 1995
70
Maximizing loop parallelism and improving data locality via ..
- Kennedy, McKinley - 1993
69
Compiling collection-oriented languages onto massively paral..
- Blelloch, Sabot - 1990
54
Technical Report CMU-CS (context) - Blelloch, their - 1990
51
The calculational fusion system HYLO
- Onoue, Hu et al. - 1997
50
Compiling Haskell by program transformation: a report from t..
- Jones - 1996
46
Deriving structural hylomorphisms from recursive denitions
- Hu, Iwasaki et al. - 1996
45
Direct Methods for Sparse Matrices (context) - Du, Erisman et al. - 1986
44
Transforming high-level data-parallel programs into vector o..
- Prins, Palmer - 1993
37
Communications of the ACM (context) - Cann, rekindled - 1992
30
Improving the Performance of Virtual Memory Computers (context) - Abu-Sufah - 1979
24
Compilation of haskell array comprehensions for scientic com.. (context) - Anderson, Hudak - 1990
19
An algorithmic approach to compound loop transformations (context) - Wolf, Lam - 1991
18
Secrets of the glasgow haskell compiler inliner
- Jones, Marlow - 1999
14
Type-safe cast: Functional pearl
- Weirich - 2000
13
Unboxed values as rst class citizens in a non-strict functio..
- Jones, Launchbury - 1991
13
Playing by the rules: rewriting as a practical optimisation ..
- Jones, Hoare et al. - 2001
12
Lisp and Symbolic Computation (context) - Jones, Launchbury et al. - 1995
11
More types for nested data parallel programming
- Chakravarty, Keller - 2000
11
Let- oating: Moving bindings to give faster programs (context) - Jones, Partain et al. - 1996
9
Transformation-based Implementation of Nested Data Paralleli.. (context) - Keller - 1999
8
Loop fusion in High Performance Fortran
- Roth, Kennedy - 1998
7
Flattening trees
- Keller, Chakravarty - 1998
7
Segmented operations for sparse matrix computation on vector..
- Blelloch, Heroux et al. - 1993
6
Journal of Functional Programming (context) - Blelloch, Burch et al. - 2001
6
Combining loop fusion with prefetching on shared-memory mult.. (context) - Manjikian - 1997
6
A new method for functional arrays
- O'Neill, Burton - 1997
5
Expressing irregular computations in modern Fortran dialects
- Chatterjee, Prins et al. - 1998
4
On dening application-specic high-level array operations by .. (context) - Scholz - 1998
4
Glasgow Haskell Compiler (context) - Team - 2001
4
Flattening is an improvement
- Riely, Prins - 2000
3
How portable is nested data parallelism
- Chakravarty, Keller - 1999
3
Implementing the conjugate gradient algorithm in a functiona..
- Serrarens - 1997
2
Partial evaluation of shaped programs: experience with FISh
- Jay - 1999
2
A functional perspective of array primitives
- Chuang - 1996
2
Application of the polytope model to functional programs (context) - Ellmenreich, Lengauer et al. - 1999
1
Haskell libraries: Language support (context) - Team - 2001
1
The implementation and eciency of arrays in Clean (context) - Groningen - 1997
The graph only includes citing articles where the year of publication is known.
Documents on the same site (http://www.cse.unsw.edu.au/~chak/papers/): More
Lazy Lexing is Fast - Chakravarty (1999)
(Correct)
Flattening Trees - Keller, Chakravarty (1998)
(Correct)
How Portable is Nested Data Parallelism? - Chakravarty, Keller (1999)
(Correct)
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC