[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- To: Fahlman@C.CS.CMU.EDU
- Subject: EVAL
- From: Alan Bawden <Alan@AI.AI.MIT.EDU>
- Date: Sat, 22 Nov 86 17:32 EST
- Cc: Sean.Engelson@CAD.CS.CMU.EDU, common-lisp@SU-AI.ARPA
- In-reply-to: <FAHLMAN.12256513463.BABYL@C.CS.CMU.EDU>
Date: Thu, 20 Nov 1986 16:19 EST
From: "Scott E. Fahlman" <Fahlman@C.CS.CMU.EDU>
EVAL cannot easily be defined to work in the lexical environment in
which it appears because that lexical environment is not around at
runtime, when the argument to EVAL arrives and the evaluation occurs.
In any event, it would eliminate many of the benefits of lexical
scoping to provide a loophole through which arbitrary forms might be
smuggled into a lexical environment at runtime. For example, certain
optimization are now possible because the compiler can examine all
possible references to a lexically-bound variable by scanning the
lexical block in which it is bound; thsi would go away in the presence
of your LEXICAL-EVAL....
Right. This demonstrates that LEXICAL-EVAL would have to be a new special
form, rather than simply a function.
- From: "Scott E. Fahlman" <Fahlman@C.CS.CMU.EDU>