From ... From: Erik Naggum Subject: Re: EVAL Implementations Date: 1996/08/15 Message-ID: <3049102812299749@arcana.naggum.no>#1/1 X-Deja-AN: 174359424 sender: erik@arcana.naggum.no references: <4utk8d$4j0@net.auckland.ac.nz> organization: Naggum Software; +47 2295 0313 newsgroups: comp.lang.lisp Malcolm Chiang Yoen Chan asks whether EVAL is just using the global environment, and the answer is yes, it does, and that's what what the language specification says it should do. http://www.harlequin.com/books/HyperSpec/Body/fun_eval.html Malcolm then asks about (let ((x 1)) (eval 'x)) after (defvar x 100). as the above web page will tell you, `eval' "evaluates the form in the current dynamic environment and the null lexical environment". `defvar' makes the variable dynamic. `let'-bindings on dynamic variables do not make them lexical. hope this helps. #\Erik