LISP and Symbolic Computation, 5(4)343-375

First-Class Extents

Shinn-Der Lee, Computer Science Department, Indiana University, Bloomington, IN 47405, USA
Daniel P. Friedman, Computer Science Department, Indiana University, Bloomington, IN 47405, USA

Abstract: Abstract Adding environments as first-class entities to a language can greatly enhance its expressiveness. But first-class environments rely on identifiers, the syntax of variables, and thus do not mesh well with lexically-scoped languages. We present first-class extents as an alternative. First-class extents are founded upon lexical variables with dynamic extent. They are defined directly on the variables themselves rather than on their syntax. They therefore do not cause variable name capturing problems that plague first-class environments. Moreover, distinguishing variables from locations allows first-class extents to be orthogonal to imperative and control features.

Keywords: identifier, variable, location, scope, extent, state

[local copy]
[picture of journal cover]

May 2003 - hosc@brics.dk