[plt-scheme] Re: case-sensitive reader by default

From: Philippe Meunier (meunier at ccs.neu.edu)
Date: Wed Apr 28 14:19:39 EDT 2004

I vote in favor of case-sensitivity.  Code that is written in
case-sensitive mode will work both in case-sensitive and
case-insensitive mode.  That's not true for code written in
case-insensitive mode.

Example: I recently received a piece of code from someone else.  Both
of us are DrScheme users.  The code worked for him but not for me.
After some debugging it turned out that his code did something like
this:

(let ([X 1])
  (let ([x 2])
    X))

and he was implicitely relying on the case-insensitivy to have the x
bind X.

So my philosophy is: have the more conservative mode (case-sensitive)
as the default, and have the user have to explicitely use some magic
when they want to relax the rules.

Eli Barzilay wrote:
>* After thinking about these things for a long while, I tend to think
>  now that it is irrational to stick to some arbitrary character
>  equivalence relation.  Unicode is only making this point stronger.

Yes, that too.  People can't even agree on what the caracter
equivalence relation is supposed to be.  If you ask a french computer
scientist he will probably tell you that the uppercase version of é is
E.  If you ask a french typograph he will probably tell you that it's
É (the typograph is correct, but computer scientists have been using
french keyboards with no É letter on them for so long that for them E
became the correct form).

Philippe



Posted on the users mailing list.