>>>> "Rick" == Rick Campbell
<campbell(a)cyberpass.net> writes:
Rick> (setq bar 23)
Rick> Of course, many consider this sloppy. CMUCL issues a warning at this
Rick> point.
And so it should. Thanks for pointing this out!
Rick> What I want is:
Rick> (setq 23)
Rick> (defmacro foo () 'bar)
Rick> (foo) => 23
Rick> (let ((bar 42)) (foo)) => 23 [note: CL actually yields 42]
Rick> (setq bar 57)
Rick> (foo) => 57
Rick> (let ((bar 42)) (foo)) => 57 [note: CL actually yields 42]
Rick> For what it's worth, CMUCL gives the values that you want, assuming
Rick> that you meant (setq bar 23) as the first form rather than (setq 23).
But that's probably because CMUCL makes BAR special. CLisp doesn't.
So you cannot rely on this behavior.
--
Cheers =8-} Chipsy
Friede, Völkerverständigung und überhaupt blabla