Michael Hobbs wrote: > Ron Adam wrote: >> It is also an outline form that frequently used in written languages. >> Something >> python tries to do, is to be readable as if it were written in plain >> language >> where it is practical to do so. So the colon/outline form makes a certain >> sense >> in that case as well. >> > That is perhaps the most convincing argument that I've heard so far. > Indeed, I often find myself writing out colons when writing pseudo-code > out on paper. The reason, however, is usually because my indents don't > quite line up as perfectly on paper as they do in an editor. The colons > provide a form of backup separation for when my columns start to get > sloppy. (Natural language is actually filled with such redundancies in > order to compensate for sloppy handwriting.) This backup function > obviously isn't needed when a computer is taking care of the layout. > > My final argument against the colons is to simply try programming in > Ruby for a while and then come back to Python. I think you'll find that > programming without the colons just simply feels more "natural".
LOL, of course it would. I would expect that too after a suitable amount of 'brain washing', oops, I mean training and conditioning. ;-) The point is what is more natural to "read" with a minimum amount of explanation. I would think for most people who are learning programming for the first time, it is things that resemble things they already know. Such as outlining with colons. Leaving the colon out probably would feel more natural for writing once you get used to it. After all it is a bit less typing. But I don't think it would be the most readable choice for most people. It's probably a trade off, readability vs writability. Another python development guideline is to favor readability over writability on the presumption we tend to write code once, but read code many times. Here's an alternative test. Write a program to remove all the end of line colons from pythons library and then write another separate program to put them back in. Will it miss any? will it pass the python test suite? I think you will find that that is more complex than it sounds. Try writing colorizing routines for both versions? Which is easier? Cheers, Ron PS. Rather than shav of on character her and ther in pythons programing languag, Lets remov all the silent leters from the english languag. That will sav thousands mor kestroks over a few yers. I think if you try that for a few months and then switch back, you will find writing without the silent letters just feels more natural. ;) -- http://mail.python.org/mailman/listinfo/python-list