[R6RS] Case sensitivity

Michael Sperber sperber
Tue Nov 2 14:31:10 EST 2004

>>>>> "Marc" == Marc Feeley <feeley at IRO.UMontreal.CA> writes:

Marc> How can you be so sure?  I asked my wife (as you know she is German)
Marc> and she gave me several good examples of German words that you might
Marc> find in a program and that have different meanings when the initial
Marc> letter's case is changed:

Marc>   arm (poor)          Arm (arm)
Marc>   gut (good)          Gut (posession)
Marc>   haben (to have)     Haben (plus column, accounting term)
Marc>   leben (to live)     Leben (life)
Marc>   quellen (to swell)  Quellen (sources)
Marc>   zahlen (to pay)     Zahlen (numbers)

Well, actually the same word may have different meanings even though
the entire spelling is the same.  Context usually clears up any
ambiguity.  Moreover, I've never seen German programmers make the case
distinction in the way that you suggest.  In a case-sensitive
language, they just use the given programming language's convention.
So you'll see identifiers like:

macheArm ("make poor")
armAb ("arm off")
zahlenErweitere ("extend numbers")

even though it's in conflict the language's proper case.

Moreover, I consistently see German beginners implicitly assume
case-insensitivity and get confused by the case-sensitivity of the PLT
teaching languages.

(And I do assume beginners are an important target group.)

Marc> Unicode's locale-insensitive case mapping is fine at the programmatic
Marc> level (i.e. specification of char-upcase, etc) but not for the lexical
Marc> syntax of the language, because that locale-insensitive mapping *is*
Marc> locale-insensitive (i.e. it may not correspond to the case-mapping
Marc> of the programmer's natural-language).

In 99.9% of the cases it will, though.

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

More information about the R6RS mailing list