On Thu, 26 May 2011 09:15:37 pm Serge Hulne wrote:
It is my feeling that without such a tool Python is inherently very vulnerable to glitches occurring at editing time:
I can't think of any language that is invulnerable to the errors you list. All languages are vulnerable to glitches occurring at edit time. Picking your second example:
2. Tab key inadvertently hit.
If you inadvertently hit the tab key in the middle of a line:
n = le n(mylist) # oops, hit the tab key!
do you expect it to keep working? No. Then why treat the start of the line any different? There might be some places that, *by chance*, an extra tab won't break the code:
n = len( mylist)
but you shouldn't rely on that. In general, you should expect ANY and EVERY mutation of source code could break your code, and avoid tools or practices that insert arbitrary changes you didn't intend. Don't let your cat walk on the keyboard while editing source code, don't put your code through a tool that turns text into fake Swedish, and don't use tools that mangle whitespace. It is commonsense really.
There are broken tools out there -- especially web forum software -- that arbitrarily mutate whitespace in source code. Those tools are broken, and should be avoided. If you can't avoid them, you have my sympathy, but that's your problem, not Python's, and Python doesn't need to be integrated with a tool for fixing broken source code.