[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
lexical list
R4RS and the standard state now that the expression '<datum> is
equivalent to the expression (quote <datum>). This is unambiguous now
but becomes ambiguous when the reserved words become unreserved. I am
proposing that we plan on resolving that ambiguity by stating that the
meaning of the expression '<datum> is the same as the interpretation of
the expression (quote <datum>) in the initial Scheme syntactic
environment.
I don't like this at all.
I think that the traditional meaning, that is, the character-level
parser (ie. READ) expands '<anything> into (QUOTE <anything>) and the
current syntactic (or otherwise) binding of QUOTE is used, is a simpler
model and much better. I'd rather not intertwine character-level
syntax with s-expression syntax as deeply as you would like.
It's also the case that if I rebind QUOTE, it's precisely to obtain a
new version (that perhaps interns constants), even when I use the #\'
syntax.
I don't think that this is inconsistent with requiring `(,x) to always
be a list (unless QUASIQUOTE is shadowed), since the simple model for
the parser still holds. The big mess is hidden inside QUASIQUOTE, in
the syntax resolver, not in the character-level parser.