LISP and Symbolic Computation, 4(2)107-141

Free Variables and First-Class Environments

James S. Miller, Computer Science Department, Brandeis University, Waltham, MA
Guillermo J. Rozas, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, MA

Abstract: A simple set of extensions to the SCHEME language removes the need for a distinguished top level interaction environment by providing first-class environments. These extensions also provide a powerful mechanism for code packaging and may be used to implement simple object-oriented systems. In addition, a mechanism is presented that implements compiled references to free variables as efficiently as in languages like C, provided the code does not directly manipulate first-class environments. The mechanism requires a simple static analysis performed by the compiler and meshes with a slower mechanism used by both interpreted code and compiled code that manipulates first-class environments.

This article is not available online.
[picture of journal cover]

May 2003 - hosc@brics.dk