[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Scheme-reports] Formal Comment: Change syntax of symbols from |<symbol element>*| to #"<string element>*"
On Tue, Mar 13, 2012 at 2:02 PM, John Cowan <cowan@x> wrote:
> Andrew Robbins scripsit:
>> In terms of transmission, the (inline hex escape) lexical space of
>> R6RS is sufficient to encompass most of the value space of (vertical
>> bar) identifiers, with the added bonus of being able to be transmitted
>> to interpreters and compilers via 8-bit unsafe channels and 7-bit
>> encoded ASCII text files.
> Everything except ||, the result of (string->symbol "").
>> Neither (vertical bar) nor Unicode identifiers (also added in R6RS)
>> can make this claim.
> Vertical bar as defined in draft 6 allows inline hex escapes within the
> bars, so it allows everything that inline hex escapes do.
>> Why would we add 1114111 redundancies to Scheme identifier lexical
>> space when the only addition to the value space is ||?
> Vertical bars allow mixed-case identifiers in a case-folding context to
> be readable. |Foo| is much more readable than \x46;oo, and |FOO| is
> infinitely more readable than \x46;\x4F;\x4F;. This is the example that
> convinced me of the virtues of |...|.
I had already recommended before to use \x46; and \|...|
as the single and multiple escape mechanism. That kills
two birds with one character leaving |...| open. I think it's
also not overly antagonistic to Gambit's six notation since
neither an initial "|" nor "xNN;" would be meaningful in six.
I'll add this option to the ballot.
Scheme-reports mailing list