On Sat, 28 May 2011 21:02:47 -0500, harrismh777 wrote: > Minor, yes, .... until you need to make something work--- only to be > frustrated to find that a detail that was not expected has risen to bite > a sensitive place... :)
Just like when migrating from Python 2.3 to 2.6. And 1.5 and 2.0, and 2.0 and 2.2, and 2.2 and 2.3. > I am amazed at how many folks are not using 3.x/ Why? (beats me), Because: (1) the major operating systems either don't provide Python at all (Windows), or are conservatively still using Python 2.6 or even 2.5 (Mac OS, most Linux distros); (2) the Python website still recommends that "Python 2.x is the status quo, Python 3.x is the shiny new thing" <http://wiki.python.org/moin/Python2orPython3> ; and (3) the most of the big frameworks and libraries have either just recently been upgraded to support 3.x, or haven't yet been upgraded. There's very little mystery about it. Migration to 3.x is going according to plan. The majority aren't expected to migrate until probably 3.4 or even 3.5. > but how do I know they're not using it...? Because, if they were > trying to use it with 2.x knowledge they would be complaining bloody > murder.. for instance, how do we reload a module in 2.x... with, um, > reload. This has always been the way... every book says so, *Every* book? Even these? http://diveintopython3.org/ http://www.qtrac.eu/py3book.html http://www.mindviewinc.com/Books/Python3Patterns/Index.php Please quote chapter and verse. [...] > PS Something nobody has pointed out yet is that "completely > incompatible" is redundant. That's because it is not redundant. There is a difference between 1% compatible and 99% compatible and 100% incompatible. > ... its like saying totally destroyed. I > was trying to be funny, but nobody unpinned it... I'm disappointed. > > Some of the posts here are referring to the two languages as partially > incompatible.... reminds me of that line from Princess Bride... "... > he's not dead, hes only mostly dead!... and mostly dead is partly > alive!" To say that 3.x is partly compatible with 2.x is silly, What a ridiculous statement, and one which flies in the face of major projects like numpy which support 2.x and 3.x out of a single code base. I invite you to consider the difference between a legally dead person moments before being resuscitated by a paramedic, versus a chicken that has just been beheaded and is still running around the yard, versus a million-year-old fossilized bone that has turned to stone. Who could possibly justify saying that all three are equally dead? Beware the tyranny of the discontinuous mind. http://www.sciencemusings.com/2007/07/tyranny-of-discontinuous-mind.html Both life and compatibility are matters of degree, not binary states. For proper operation, an electrical device might require a 6V 250mA transformer, but it might work well enough with one that provides just 5V and 240mA, provided you don't stress the device too much. We often design our physical devices to force compatibility to be all-or- nothing, e.g. you can't fit a USB plug into an audio jack, no matter how you try. But that's enforced by the design, not because compatibility is inherently true/false. Compatibility is inherently continuous, a matter of degree. This is especially true when it comes to languages, both natural and programming. British English and American English are perhaps 99.5% compatible, but "table a motion" means completely opposite things in British and American English. (In Britain, it means to deal with it immediately; in the USA, it means to postpone it.) Should we conclude from this that British and American English are "different languages" and "completely incompatible"? The differences between Python 2 and 3 are less than those between American and British English. To describe them as "different languages", as if going from Python 2 to 3 was like translating English to Italian, is absurd. -- Steven -- http://mail.python.org/mailman/listinfo/python-list