[r6rs-discuss] Case sensitivity
avp at MIT.EDU
Tue Feb 24 15:11:23 EST 2009
On Feb 24, 2009, at 2:27 PM, Thomas Lord wrote:
>>> It also suggests a parsimonious representation
>>> in Scheme for URI's and for XML's fully qualified element
>> This seems an excellent argument against CI symbols in the language
>> when more than 7-bit ASCII character set is allowed.
> Do you mean because basic URI equivalence
> is defined in a case-sensitive way?
Not quite. Every feature in the language has its costs and benefits.
Trying to have case sensitive identifiers in the 50s was not a good
choice (APL's underscored letters aren't the most beautiful solution,
IMO). One can argue that the tradition of CI is worth preserving in
the ASCII world, because of the benefits of backward compatibility and
simplicity of case folding. However, once we have Unicode, the
complexity of staying CI grows tremendously and threatens to result in
a ball-of-hair design. In addition, it begins to conflict with a
mutual understandability meta-feature of the language. If R*RS
codifies case folding, then, given realities of human languages
involved, it will be an open-ended set of obscure algorithms that will
change in time, for no other reasons that the corresponding rules of
human languages change. This in turn will make the question of
backward compatibility an interesting one. I do not think we want a
design that require (read) to know which particular set of rules to
use to correctly read a given file.
> I suggest that that is more like an EQ? / EQV?
If you mean that to make some symbols eqv? but not eq?, I find it a
very unappealing change in semantics.
More information about the r6rs-discuss