[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] Redefining macros and special forms
From: |
John Cowan |
Subject: |
Re: [Chicken-users] Redefining macros and special forms |
Date: |
Tue, 28 Oct 2014 18:12:49 -0400 |
User-agent: |
Mutt/1.5.20 (2009-06-14) |
Peter Bex scripsit:
> Yes, this is according to spec. Macros aren't first-class, so whenever
> you use the same identifier in a non-application context it will look up
> the identifier in the runtime environment. In application context it
> will check the syntactic (compile-time) environment first.
But not when it is shadowed -- in that case, the old definition is
invisible whether it is a syntax definition or a variable definition.
R5RS doesn't have anything to say about redefinition of identifiers
with define, which is the case that doesn't work in Chicken. In R7RS,
redefining a syntax keyword is supposed to eliminate the syntax definition
(but not retroactively, of course).
--
John Cowan http://www.ccil.org/~cowan address@hidden
The man that wanders far from the walking tree
--first line of a non-existent poem by me