Go to the previous, next section.

Interpreter Environments

The operations in this section return environments that are constructed by the interpreter. These operations should only be used at the top level of a file; they are not supported in any other place. In particular, they force the current environment to be represented in a form suitable for use by the interpreter. This prevents the compiler from performing many useful optimizations on such environments, and forces the use of the interpreter for variable references in them. However, because all top-level environments (such as user-initial-environment) are already interpreter environments, it does no harm to use such operations on them.

special form+: make-environment expression ...

Produces a new environment that is a child of the environment in which it is executed, evaluates the expressions sequentially in the new environment, and returns the new environment. Note that

(make-environment expression ...)

is equivalent to:

(let ()
  expression ...
  (the-environment))

special form+: the-environment

Returns the current environment.

procedure+: interpreter-environment? object

Returns #t if object is an interpreter environment; otherwise returns #f.

Go to the previous, next section.