ACM Home Page
Please provide us with feedback. Feedback
The implementation of procedurally reflective languages
Full text PdfPdf (1.71 MB)
Source Conference on LISP and Functional Programming archive
Proceedings of the 1984 ACM Symposium on LISP and functional programming table of contents
Austin, Texas, United States
Pages: 331 - 347  
Year of Publication: 1984
ISBN:0-89791-142-3
Authors
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGART: ACM Special Interest Group on Artificial Intelligence
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 55,   Citation Count: 20
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/800055.802050
What is a DOI?

ABSTRACT

In a procedurally reflective programming language, all programs are executed not through the agency of a primitive and inaccessible interpreter, but rather by the explicit running of a program that represents that interpreter. In the corresponding virtual machine, therefore, there are an infinite number of levels at which programs are processed, all simultaneously active. It is therefore a substantial question to show whether, and why, a reflective language is computationally tractable. We answer this question by showing how to produce an efficient implementation of a procedurally reflective language, based on the notion of a level-shifting processor. A series of general techniques, which should be applicable to reflective variants of any standard applicative or imperative programming languages, are illustrated in a complete implementation for a particular reflective LISP dialect called 3-LISP.


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
 
3
4
 
5
Smith, B. Reflection and Semantics in a Procedural Language, M.I.T. Laboratory for Computer Science Report MIT-TR-272 (1982a).
 
6
Smith, B. "The Computational Metaphor", available from the author (1982b).
7
 
8
Smith, B., and des Rivières, J. "Interim 3-LISP Reference Manual", Xerox PARC ISL Report ISL-1, Palo Alto (1984, forthcoming).
 
9
 
10
 
11
Sussman, G, Holloway, J., Steele, G., and Bell, A. "SCHEME-79 - LISP on a Chip", IEEE Computer, pp. 10-21 (July 1981).
 
12
 
13
 
14
 
15
 
16
Steele, G., and Sussman, G., "The Revised Report on SCHEME, A Dialect of LISP", M.I.T Artificial Intelligence Laboratory Memo AIM-452 (1978a).
 
17
18

CITED BY  20

Collaborative Colleagues:
Jim des Rivières: colleagues
Brian Cantwell Smith: colleagues