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

Re: strings draft



Tom Lord <lord@xxxxxxx> writes:

>    R6RS should explicitly require that tab, form-feed, and both `a..z'
>    and `A..Z' are present, that the letters are alphabetic characters,
>    and that they are case-mapped as expected.

This is inconsistent with best Unicode practice, thanks to the
"Turkish I Problem".

I would rather R6RS 
 1) Dropped case-mapping, or
 2) Provided case-mapping functions that do not violate best Unicode
    practices.

The latter is done by doing both of the following:
  a) Case mapping is a function on strings, not characters, and which
     can change length, and
  b) Case mapping is locale dependent, so at least some extra "locale"
     object needs to be passed to the functions.  I would envision
     this being analogous to the existing "environments" for the
     specification of eval.

>   	char-alphabetic?
>   	char-numeric?
>   	char-whitespace?
>   	char-upper-case?
>   	char-lower-case?

The last two of these are local-dependent as well, I think.