Re: [Scheme-reports] Formal Comment: Change syntax of symbols from |<symbol element>*| to #"<string element>*" Alex Shinn (13 Mar 2012 05:31 UTC)

Re: [Scheme-reports] Formal Comment: Change syntax of symbols from |<symbol element>*| to #"<string element>*" Alex Shinn 13 Mar 2012 05:31 UTC

On Tue, Mar 13, 2012 at 2:02 PM, John Cowan <cowan@mercury.ccil.org> 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.

--
Alex

_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports