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

Re: [Scheme-reports] Symbol escapes - clarification

Shiro Kawai scripsit:

> This is a somewhat old issue, but I wonder how '|' symbol escapes
> ended up excluding '|' and '\' inside it.  Does it intend a room for
> future extension that vertical bar and backslashes can be included in
> '|' symbol escapes by escaping them with '\', as in CL?  I searched
> tickets in the WG1 trac site but couldn't find the discussions on it
> except ticket #16.

I am not sure I understand this. \-escaping *is* allowed within
|-escaping, so |(\x3BB;)| is the identifier "parenthesized lambda".
Indeed, there is a ticket pending to disallow \-escaping by itself and
allow it only within |-escaping.  That would allow \ to be an ordinary
identifier character.

> - CL also has '|'-escapes but they don't delimit symbols, so
> |abc|def|ghi| is read as a single symbol abcDEFghi.  R7RS doesn't
> explicitly say '|' delimits the symbol, but also doesn't seem to
> allow |abc|def syntax according to 7.1.1.  I'm fine with either way,
> but was it a conscious decision?

It was a conscious decision to make vertical bars delimit the symbol, in
the same way that quotes delimit a string.  The wording of 2.1 is meant
to imply this: a symbol can begin with |, contain arbitrary characters
or inline hex escapes, and end with |.

Well, I have news for our current leaders       John Cowan
and the leaders of tomorrow: the Bill of        cowan@x
Rights is not a frivolous luxury, in force      http://www.ccil.org/~cowan
only during times of peace and prosperity.
We don't just push it to the side when the going gets tough.  --Molly Ivins

Scheme-reports mailing list