Hendrik Boom <hendrik@???> writes:
> On Wed, May 25, 2016 at 03:22:01PM +0100, Rainer Weikusat wrote:
>
>>
>> The LISP "alist" implementation is, as we noted earlier, an
>> example of the "deep access" approach". The "alist" contains
>> pointers to previous values of all bound variables together with
>> the variable names. The name of the variable appears on the left
>> side of a pair, and the value of the variable on the right side.
>>
>> [ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-199.pdf,
>> p. 5]
>>
>> [...] when one transmits a functional argument f which is to be
>> evaluated in its binding environment, then one uses FUNCTION(f)
>> instead of QUOTE(f). [...] The result of FUNCTION will be a
>> structure which not only contains a reference to the function f
>> but also contains a pointer to the binding environment. Thus at
>> the FUNARG's activation time we will be able to use the pointer
>> to restore the environment to the proper place.
>>
>> [...]
>>
>> In the "alist implementation, this process is even easier,
>> because the save pointer is made the current "alist", and we are
>> done because the values of free variables will be obtained from
>> the "alist" which contains the binding environment.
>> [p. 7, 8]
>
> If you're using alists, lexical scoping is more efficient
> than dynamic scoping, because you won't be searching lond association
> lists all the time.
I quoted this to provide a reference for the explanation which came
above it. I don't quite understand how you statement would apply to
that.