Language change and code breaks (fwd)
donn at u.washington.edu
Fri Jul 20 00:51:36 CEST 2001
Quoth Lulu of the Lotus-Eaters <mertz at gnosis.cx>:
| "Bjorn Pettersen" <BPettersen at NAREX.com> wrote:
|> TRuE, tHe ExPRESsiVity oF ThE lANGuaGE is ProBAbLY nOt cRipPled,
|> hOWEvEr, tHere ARe SigNIficantLy FeweR ideNtIFIeRs AVaILABlE whICh mEAns
|> iT is LESs eXPRessIvE. IN pArTicULar, cOMmON Idioms liKE naMiNg CLASseS
|> stArTiNg WiTh UppER cASE lETtERS, AND instaNCeS OF THose cLAsSes
|> begINNiNG with A lOwER caSE LettER CaN NO LongeR Be usED.
| I don't really have a strong opinion on the case-sensitivity thing. I
| think it would probably be a good idea in a brand-new language, but is
| probably too much work to try to change Python (given existing code).
| But one thing that really annoys the hell out of me is the "argument"
| that always comes up, like Pettersen's above. The allegation is that if
| a language was case-insensitive, variables would have jarring random
| case like in above (sometimes this is adduced to "prove" that
| case-sensitivity improves readability). I've programmed for a large
| number of years with case-insensitive languages, and I have never ONCE
| seen code that looked like the above. It's just not what people do.
| Likewise, in Python you rarely see syntactical but silly choices like:
| >>> xlsoALwl390sslkslWW = 37
| >>> xlsoALwL390sslkslWW = 38
| >>> print xlsoALwL390sslkslWW,xlsoALwl390sslkslWW
| 38 37
This is the problem with naming a language after an exquisitely
silly comedy act. People sometimes get too into it. He was
definitely mocking one of the arguments in this issue, but one
or the other of us misinterpreted his point.
The way I read it, the point was that case variability works against
comprehension, because we are all case sensitive when we read.
That's why no one programs like that paragraph - not just because
one doesn't, but because it's painfully impractical. No one would
program that way in a case insensitive language, that's sure right.
The most expressive way to write in English or any other European
language is to use the same capitalization that everyone else uses.
For me, this is a little like indentation. We all should indent,
in any language I ever used save assembly. No one who cares about
their code would neglect to indent. So, should indentation be
significant? Yes! Who needs indentation that fails to match
meaning?! Similarly, case is useful in computer programming
notation, just as any language that has upper case letters to
write with has found them useful. So, should case be significant?
Donn Cave, donn at u.washington.edu
More information about the Python-list