Arrays, Functional Languages, and Parallel SystemsLenore M. Restifo Mullin During a meeting in Toronto last winter, Mike Jenkins, Bob Bernecky and I were discussing how the two existing theories on arrays influenced or were in fluenced by programming languages and systems. More's Army Theory was the basis for NIAL and APL2 and Mullin's A Mathematics of A rmys(MOA) , is being used as an algebra of arrays in functional and A-calculus based pro gramming languages. MOA was influenced by Iverson's initial and extended algebra, the foundations for APL and J respectively. We discussed that there is a lot of interest in the Computer Science and Engineering communities concerning formal methods for languages that could support massively parallel operations in scientific computing, a back to-roots interest for both Mike and myself. Languages for this domain can no longer be informally developed since it is necessary to map languages easily to many multiprocessor architectures. Software systems intended for parallel computation require a formal basis so that modifications can be done with relative ease while ensuring integrity in design. List based lan guages are profiting from theoretical foundations such as the Bird-Meertens formalism. Their theory has been successfully used to describe list based parallel algorithms across many classes of architectures. |
Contents
| 1 | |
Compiling APL Robert Bernecky | 19 |
Acorn RunTime System for the CM2 Walter Schwarz 35 | 34 |
Compiling Issues of Monolithic Arrays Guang Gao | 59 |
Arrays in Sisal John T Feo | 93 |
Arrays in a Functional Language Carl McCrosky Kanad Roy KenSailor | 107 |
Arrays in Haskell Guy Lapalme 125 | 124 |
Array Theory and Knowledge Representation Janice Glasgow | 133 |
Arrays in Fidil Luigi Semanzato Paul Hilfinger 155 | 171 |
A Basis for FFP with Arrays Lenore M Restifo Mullin 185 | 184 |
GenotypeA Pure Functional Array Language Sebastian Shaumyan | 201 |
A Comparison of Array Theory and A Mathematics of Arrays Michael A Jenkins Lenore M Restifo Mullin | 237 |
Alternative Evaluation of Array Expressions Cory F Skutt | 269 |
Matrix Inverion in 3 Dimensions Gaétan Hains | 295 |
Fuzzy Inference Using Array Theory and Nial Jan Jantzen | 303 |
A Parallel Intermediate Representation Based on Lambda Expressions Timothy A Budd | 145 |
Other editions - View all
Arrays, Functional Languages, and Parallel Systems Lenore M. Restifo Mullin No preview available - 1991 |
Arrays, Functional Languages, and Parallel Systems Lenore M. Restifo Mullin No preview available - 2012 |
Common terms and phrases
A-LAM algorithm application applicative universal grammar architecture AREF array expressions array theory axis balancing ratio binary binary operation Church-Rosser theorem combinator component Computer Science concept Connection Machine corresponding data structures dataflow dataflow software pipelining defined definition denoted described descriptors dimensions domain eager efficient elements ENDIF example execution extended Falafel FIDIL flat arrays FORTRAN functional languages functional programming fuzzy Genotype HASKELL implementation input integer iteration Jenkins lambda calculus latched lazy evaluation left argument limited balancing LISP loop macro mathematical matrix memory moa_shape monolithic arrays natural languages nested arrays Nial nodes notation objects operations optimization outer product parallel partitioning performance predicate primitive problem processor programming languages recursive reduction referential transparency represent representation reshape result run-time system scalar semantics sequence shape Sisal software pipelining symbolic techniques theorem tion transformations University valence values variables vector verb
