[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Issue: SYMBOL-MACROLET-DECLARE (version 1)
- To: Patrick Dussud <dussud@lucid.com>
- Subject: Re: Issue: SYMBOL-MACROLET-DECLARE (version 1)
- From: masinter.pa@Xerox.COM
- Date: 20 Sep 88 18:02 PDT
- Cc: piazza%lisp.DEC@decwrl.dec.com, Moon@stony-brook.scrc.symbolics.com, Common-Lisp-Object-System@SAIL.STANFORD.EDU, cl-cleanup@SAIL.STANFORD.EDU
- In-reply-to: Patrick Dussud <dussud@lucid.com>'s message of Tue, 13 Sep 88 11:41:59 PDT
We need to get this cleaned up in time to present to X3J13.
I think it is at least consistent with LET semantics to say that
(LOCALLY (DECLARE (SPECIAL X)) ...) introduces a new scope for X. Its consistent
with
(LET((X 4)) (DECLARE (SPECIAL X))
(LET ((X 3))
(LOCALLY (DECLARE (SPECIAL X)) X)))
returning 4.
I.e., add to the proposal something like:
Clarify that, within a SYMBOL-MACROLET, a nested LOCALLY with a DECLARE SPECIAL
introduces a new scope for the variable(s) declared special, and will override
within its scope any SYMBOL-MACROLET.