[R6RS] draft Unicode SRFI

Michael Sperber sperber
Thu Jun 30 02:25:34 EDT 2005


Good work---many thanks!

I've got a number of comments---as usual, I'm staying silent on the
stuff I like and sticking to the criticism, hopefully constructive.

Matthew Flatt <mflatt at cs.utah.edu> writes:

>  * I added the \<eol><whitespaces> and \<space> string escapes, as
>   discussed on this list.

I think I probably missed \<space>---does this mean I can only
terminate a variable-length escape sequence with a space?  If so, that
seems silly.

>  * Marc's here-string and quoted symbols are in.

> To discuss:

Whatever we don't resolve here should probably go into an issues
section.

>  * I left octal escapes for strings intact for compatibility for C.
>    (Also, I actually use them --- perhaps from spending too much time
>    with UTF-8 encoding.) There's no octal for characters, though.

Did you use octal escapes to denote UTF-8 code units or actually
scalar values?  (I'm still opposed.)

>  * I added an extension for symbols that allows any non-whitespace
>    character above 127 where a <letter> is allowed. Is this too
>    liberal?

Yes.  Shouldn't we at least restrict to Unicode letters and numbers?
It seems to me we at least should exclude Unicode separators.

>    Also, should we try to allow `->' as a symbol at this
>    point?

If we talk about symbols at all, we should.  (More on that below.)

- Could the SRFI please have an issues section where the things we
  haven't agreed on are listed?  On that list, by me, are:

  o duplication and potential confusion between #\linefeed and
    #\newline
  o alternate syntax for numerical scalar values in character and
    string literals
  o Anton's (Perl's) generalization of here strings
  o \<eol><whitespaces>
  o #\o<o><o><o>

  Otherwise, we'll just run around the same block on the SRFI list as
  here needlessly.  (We'll probably run around it anyway, but this
  way, at least it doesn't drop out of the sky for the readers.
  Politically, I also think we'll get into trouble with some of the
  potential participants of the discussion if we don't at least agree
  on that the issues are.)

- I think the delimiter issue for character literals could use an
  example.  Otherwise, the point may get lost on the casual reader.

- The document says "any C string literal is also a Scheme string
  literal": I don't believe that's true anymore, as the \x syntax is
  variable-length in C.  (The sentence is literally true, I guess, but
  not in a meaningful way.)  As a result, I'm pretty confused on the
  compatibility issue---if we're not compatible with C, we could also
  make octal escapes fixed-length at least, to make the whole
  scalar-value-literal issue a little less patchwork than it seems
  now. Compatibility with C and Java should also be in the issues
  section probably.

- I think the whole symbol-syntax issue hasn't been discussed
  adequately on the list, and I think it doesn't need to be in this
  SRFI.  If it is, there should be an entry in the issues section, and
  a rationale.  Moreover, as you pointed out, there should be a
  grammar for the lexical syntax.

- What are your plans wrt the reference implementation?  In my mind,
  we could and should provide one for most of it.  I'd be happy to
  donate code.

- I don't understand how I could portably use the locale functionality
  in my code, since the document doesn't specify a single string I
  might use as a locale name.  Also, the locale stuff could (and, to
  my mind should) have a reference implementation for at least some
  locales from the Unicode standard.  (We could bum a starting point
  off Alex Shinn, I think.)

- The sentence on UnicodeData.txt should probably be expanded a little
  bit and include a link to
  http://www.unicode.org/Public/UNIDATA/UnicodeData.txt be
  understandable by non-Unicode-wizards.

- The section on here strings should probably refer to the scsh
  manual, and possibly to the manuals of PLT Scheme and Gambit-C.

Typos:

- "charcter"

- "can be includes" -> "can be included"

- "returna" -> "return a"

- "delimitter"

- The document makes out Neil Van Dyke as an R6RS editor.

-- 
Cheers =8-} Mike
Friede, V?lkerverst?ndigung und ?berhaupt blabla


More information about the R6RS mailing list