Optimization of Series Expressions: Part II: Overview of the Theory and Implementation
Author(s)
Waters, Richard C.
DownloadAIM-1083.ps (5.241Mb)
Additional downloads
Metadata
Show full item recordAbstract
The benefits of programming in a functional style are well known. In particular, algorithms that are expressed as compositions of functions operating on series/vectors/streams of data elements are much easier to understand and modify than equivalent algorithms expressed as loops. Unfortunately, many programmers hesitate to use series expressions, because they are typically implemented very inefficiently---the prime source of inefficiency being the creation of intermediate series objects. A restricted class of series expressions, obviously synchronizable series expressions, is defined which can be evaluated very efficiently. At the cost of introducing restrictions which place modest limits on the series expressions which can be written, the restrictions guarantee that the creation of intermediate series objects is never necessary. This makes it possible to automatically convert obviously synchronizable series expressions into highly efficient loops using straight forward algorithms.
Date issued
1989-01-01Other identifiers
AIM-1083
Series/Report no.
AIM-1083
Keywords
series expressions, looping constructs, compilation, programsoptimization, functional programming