Brian Harvey scripsit: > Gosh, John, if it's this easy, why did we have all those arguments before > in which certain people were saying it was /impossible/ to have > case-insensitive identifiers?
Anyone who said that was either misinformed, or misunderstood, or (but I hope not) speaking irresponsibly. I hold the virtues of case-sensitivity to be substantial, but there is no question that case-insensitivity is *possible* in a fully Unicode world, given that Unicode even goes to the trouble to define a case-folding algorithm. Because there are lower-case letters without uppercase counterparts, but not vice versa, Unicode folding is downcasing, but with certain special cases that may produce surprising results. In English and many other languages, capitals are mostly typographical, but in German they are part of the orthography. This can lead to unexpected consequences. For example, although "ß" is a lowercase letter, it case-folds to "ss" as part of a string. Why? Because "ß" upcases to "SS", which downcases to "ss". Consequently, the well-known example of German "Mass" (mass) vs. "Maß" (measure) will case-fold to the same string, "mass". In addition, since German nouns are capitalized and non-nouns are not, programmers using German-language identifiers are well-served by case sensitivity. Likewise, in scientific units case is orthographical: milliamperes (mA) are not megamperes (MA). Arguments like "All the cool languages are case-sensitive nowadays" just tend to piss Schemers off, so I won't even mention them. However, I will point to XML and JSON, both of which are rather important in data interchange, and both of which are case-sensitive. Of course, there's no reason you *have* to use symbols in handling these formats, but it's nice. If you look at http://tinyurl.com/thing-one, you'll see that I propose #cs and #ci for controlling case sensitivity in Thing One. This is common in many R6RS implementations. R6RS suggests the unofficial use of #!case-fold and #!no-case-fold instead, but it is not a conformance issue. -- I now introduce Professor Smullyan, John Cowan who will prove to you that either [email protected] he doesn't exist or you don't exist, http://www.ccil.org/~cowan but you won't know which. --Melvin Fitting _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
