Environment Objects (original) (raw)

ANSI Common Lisp 3 Evaluation and Compilation 3.1 Evaluation 3.1.1 Introduction to Environments

3.1.1.4 Environment Objects

Some operators make use of an object, called an environment object, that represents the set of lexical bindings needed to perform semantic analysis on a form in a given lexical environment. The set of bindings in an environment objectmay be a subset of the bindings that would be needed to actually perform an evaluation; for example, values associated withvariable names and function names in the corresponding_lexical environment_ might not be available in an environment object.

The type and nature of an environment object is implementation-dependent. The values of environment parameters to _macro functions_are examples of environment objects.

The object nil when used as an _environment object_denotes the null lexical environment; see Section 3.1.1.3.1 The Null Lexical Environment.