[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.