[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.