Language change and code breaks

Delaney, Timothy tdelaney at avaya.com
Wed Jul 18 21:04:53 EDT 2001


> > Windows is case-insensitive and thus "easy to use" only 
> before one needs
> > to put web-pages on the real (UNIX) web-server. Then they 
> understand all
> > the troubles with mised case, national-charset filenames, abbr~ted
> > filenames, local file references "C:\Mydocs\lalala", bmp-images etc.
> 
> But it's still open for debate whether the problem here is Windows or
> Unix!  All programming languages and file systems used to be
> case-insensitive, until the designers of Unix and C decided that it
> was too much work to write and use a case-insensitive comparison
> routine.  It wasn't necessarily intended to be better, just easier to
> implement.  But times have changed, and that's a lousy excuse.
> 
> --Guido van Rossum (home page: http://www.python.org/~guido/)

This is very true. I grew up with Apple IIs and Macintoshes.
Case-insensitive but case-preserving file systems work (IMO) very well.
However, I *also* like case-sensitive file systems. I do *not* like
Case-insensitive, non-preserving filesystems - that's just plain wrong.

However, what is applicable to filesystems is not necessarily applicable to
programming.

I know I personally prefer having the discipline of case-sensitivity forced
on me by the language. When I see a function call (for example), it is the
same in every situation.

With case-insensitive languages, you either need the editor to enforce
case-sensitivity or you need to force everyone on the team to enforce it.
Look at (yuk) VB (why do I keep using this as an example? Probably because
it's one of the worst languages I've ever seen). *Keywords* are written in
different case in different sources. Every time I look at

For Each foo In far
Next

I need to mentally translate that to my version of

for each foo in bar
next

and likewise, people who like the former need to translate my code.

Python follows "there should be one (obvious) way to do it". Most of all, I
think this should apply to the syntax. All Python code should have a similar
look. IMO the most important aspect of this is case.

Tim Delaney




More information about the Python-list mailing list