ACM Home Page
Please provide us with feedback. Feedback
Digital Library logoTake a look at the new version of this page: [ beta version ]. Tell us what you think.
The heap/substitution concept - an implementation of functional operations on data structures for a reduction machine
Full text PdfPdf (570 KB)
Source International Symposium on Computer Architecture archive
Proceedings of the 9th annual symposium on Computer Architecture table of contents
Austin, Texas, United States
Pages: 248 - 256  
Year of Publication: 1982
Also published in ...
Author
F. Hommes  Gesellschaft fü Mathematik und Datenverarbeitung mbH Bonn, Postfach 1240, D-5205 St. Augustin 1, West Germany
Sponsors
IEEE-CS : Computer Society
SIGARCH: ACM Special Interest Group on Computer Architecture
Publisher
IEEE Computer Society Press  Los Alamitos, CA, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 9,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms  

Tools and Actions: Review this Article  

ABSTRACT

At first the concept of reduction by direct substitution is described. The syntax of a subset of Berkling's reduction language is given and then its semantics is defined by a set of substitution rules. An example - a program operating on a data structure - will demonstrate two aspects: firstly, it shows how reduction using substitution works, and secondly, it points out the n2-problem, i.e. the time taken to run the program is proportional to n2, where n is the number of items in the data structure. We discuss the problem and then give a solution, which we call the heap/substitution concept. The solution is an extension of the substitution concept and we get it by adding a restricted use of an environment. All advantages of reduction by substitution remain in effect but the time taken to evaluate programs operating on large data structures is now proportional to n. It is also shown that the heap/substitution concept can be used to implement an efficient implementation of recursive function calls.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
Berkling, K.J. Reduction Languages for Reduction Machines Technical Report ISF-76-08, 1976, GMD, D-5205 St.Augustin
 
3
Berkling, K.J. A Symmetric Complement to the Lambda Calculus Technical Report ISF-76-07, 1976, GMD, D-5205 St.Augustin
 
4
 
5
Kluge, Werner; Schluetter, Heinz An Architecture for Direct Execution of Reduction Languages in: Proceedings of the International Workshop on High-Level Language Computer Architecture, 1980, Fort Lauderdale, Florida
 
6
Mago, Gyula A. A Celluar Computer Architecture for Functional Programming University of North Carolina, Chapel Hill N.C. 27514
 
7
 
8
PACTEL GmbH - PA Computer und Telekommunikation Evaluation of the Reduction Machine Final Report, April 1979, Prepared for GMD
 
9
Turner, D. A. A New Implementation Technique for Applicative Languages in: Software-Practice and Experience, Vol. 9, pp.31-49, 1979.
 
10
Wilner, W.T. Recursive Machines Xerox Palo Alto Research Center, June 24, 1980