From: Austin Ziegler Date: 2005-10-07T03:28:38+09:00 Subject: Re: Object Orientation On 10/6/05, Jim Freeze wrote: > Well, I can think of a couple of reasons why people don't put a lot > of meaning on case. > > 1) People are sloppy > 2) Written words are just a way to represent sound, and there > is no case in sound. > > But, a more precise language, like math, would distinguish > between X and x. Computers just happen to be highly > precision oriented. Not a very tolerant (ie sloppy) bunch, which, > ultimately, I think is a good thing, when you are trying > to describe processes. I don't mind case-sensitive languages. It ends up discouraging LANGUAGES THAT LOOK LIKE THIS. That said, I think that a good "static analysis" step would be to look for two items of the same "class" that are the same when case is ignored. This would discourage things like dir and Dir in the same source file without actually restricting the behaviour. I do mind case-sensitive data format descriptors (e.g., how both XML and YAML work), preferring the case-insensitivity of HTML to XHTML, even though I prefer XHTML overall. There is no meaningful reason why "customer-number" and "Customer-Number" refer to different things. I *really* mind case-sensitive filesystems and think that Unix got it wrong. I don't see them as often anymore, but it was not uncommon a decade ago to see "Makefile" and "makefile" in the same directory. IMO, Windows and OS X HFS+ get this right: the filesystem is case-preserving. That is, if I save the file as Makefile, it shows as Makefile. But I can access it as "makefile" and the OS/filesystem will give me the correct file. (I also think that NTFS and HFS+ got it right on the filename encoding. POSIX rules are too simplistic at this point. UTF-8 should be enforced at the filesystem level if you're not going to UTF-16 like HFS+ and NTFS.) -austin -- Austin Ziegler * halostatue@gmail.com * Alternate: austin@halostatue.ca