The Efficient Implementation of Very-High-Level Programming Language Constructs
No Access Until
Permanent Link(s)
Collections
Other Titles
Author(s)
Abstract
An investigation is made into efficiently-implementable very-high-level programming language constructs. In a manner analogous to ALGOL 60's abstraction away from GOTO's, an abstract replacement for pointers (the path) is proposed. The use of paths instead of pointers in unshared recursive data structures greatly simplifies the process of reasoning about programs. The existence of an efficient implementation of paths makes their use palatable as well as desirable. Also investigated is the integration of paths with existing very-high-level programming language implementation techniques, such as hash-consing. Several real-time programs in Pure LISP are presented. Building on the foundation of a real-time queue and a real-time double-ended queue, a real-time implementation of paths is given. This leads to the surprising negative result that the addition of paths does not increase the "power" of Pure LISP.