[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Issue: SYMBOL-MACROLET-DECLARE (version 1)



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.