Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Demand-driven interpretation of FP programs on a data-flow multiprocessor

Journal Article · · IEEE Trans. Comput.; (United States)
DOI:https://doi.org/10.1109/12.2246· OSTI ID:6902290
The functional programming language approach has been proposed as a solution to the programmability of large scale multiprocessor systems. This paper presents a demand-driven evaluation system for the list-structure language, Backus' FP systems. It enables execution in a data-driven environment. A formal approach for transforming FP programs into lazy programs, which contains the notion of demands, is used. The superset language of FP is called DFP (demand-driven FP). The DFP lazy programs are shown to have the property of always evaluating a sufficient and necessary result. A demand reduction scheme is used to remove unnecessary demand propagations on DFP programs to reduce run-time overhead. The DFP programs are translated into data-flow graphs according to the graph schemata developed from the FP-DFP transformation rules. The execution characteristics of the DFP graphs are identified and the architecture supports for efficient execution are suggested. Due to the laziness and the least evaluation property of transformed DFP programs, the system allows programming in FP with infinite data structures and the application of partial-functional-value evaluation. Examples of these applications including an infinite sequence generation and a fast Fourier transform are used to demonstrate the transformation process, the principles of run-time interpretation, the effectiveness of the transformation, and the power of the lazy evaluation system.
Research Organization:
Dept. of Electrical Engineering-Systems, Univ. of Southern California, Los Angeles, CA (US)
OSTI ID:
6902290
Journal Information:
IEEE Trans. Comput.; (United States), Journal Name: IEEE Trans. Comput.; (United States) Vol. 37:8; ISSN ITCOB
Country of Publication:
United States
Language:
English

Similar Records

Lazy evaluation of FP programs: A data-flow approach
Conference · Fri Dec 30 23:00:00 EST 1988 · OSTI ID:10187840

2DT-FP: A parallel functional programming language on two-dimensional data
Journal Article · Sun Oct 01 00:00:00 EDT 1995 · International Journal of Parallel Programming · OSTI ID:191985

Multiprocessor execution of functional programs
Journal Article · Sat Oct 01 00:00:00 EDT 1988 · International Journal of Parallel Programming; (USA) · OSTI ID:6193122