On 3/31/2011 2:34 AM, harrismh777 wrote:
breaking a fundamental law of object oriented programming... don't break and advertised interface (particularly if it is useful and people are actually making use of it!). This is insane folks.
Each x.y version (starting with 2.3) is feature stable: just bug fixes, no additions (except as occasionally required to fix a bug), no removals. 2.x had few feature changes or removals, as it was planned and announced that all the big ones were being delayed to 3.x. 2.7 will be polished for years, depending on how long anyone is willing to work on it. I have been a bit surprised and disappointed that no 2.x fan has yet come forward (that I know of) to specifically help fix 2.7 bugs.
Guido does not need a use case; he just needs to restore the interface that everyone expects. Put up a message to start to use key= instead, and plan deprecation for something like five years out... this just
Python 3 was announced and as a mildly code breaking version at least 5 years before it came out. Old-style classes were clearly doomed when the new object. The int division change was also decided on about that time.
I agree that it would have been better if the developer group had been large enough to make the transition more orderly, but ... as it is, it was not until 2.7 was out that we took a really good look at library interfaces and found that 'public interface' was not as well defined as it should be for some modules. That is much clearer for many in 3.2.
In the mean time... I'm playing around with 3.2 and really liking it...
Good.
hoping that the world will actually be using it someday.
I already am and fully expect it to be the dominant version in not too many years. Some linux distributions have already made it the default. Others have and will hold back.
-- Terry Jan Reedy -- http://mail.python.org/mailman/listinfo/python-list