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 co...@ccil.org The man that wanders far from the walking tree --first line of a non-existent poem by me _______________________________________________ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users