> Well, heck, in perl, "1"/2 is 0.5 as well. I'm sure there are lots of > people new to programming who gets confused when they discover that numbers > and strings are different too. Perhaps we should add auto-conversion of > strings to numbers to python as well? :-)
If that were the rule in the first place (pre-1.5.2 at least) we wouldn't cry about it (much).
> The thing that scares me most about this idea is that it breaks existing > code. And, the idea that there will be conversion tools, and auto-warnings > generated, don't impress me. You still need to touch all the old code.
YES. This is my headache too. All the pro-PEP0238 people out there assume that we will track version upgrades... but I upgraded several systems directly from 1.5.2 to 2.1. There's nothing to stop me from doing that with 2.4, and then I'll be in a world of hurt.
> What about code that you've shipped to customers already? Are we going to > demand that they not upgrade their python installation, or that they > maintain a new version for their own work and an old version to keep our > stuff going?
> While, I happen to like the way integer division works, I could be > convinced that auto-promotion from int to float might be a good thing, if > that's the way the language had been defined in the first place. Too late > to go back now, however.
Much too late.
Consistent rules which are not *wrong* but only *different* should NOT be changed this late in the game. I really don't think it takes that long to teach a newbie about integer division; is saving 5 minutes times the number of newbies out there really worth the man-hours of fixing the bugs and the serious loss of face when we screw with a fundamental rule?