The Python Software Foundation has announced the release of version 3.0 of the Python programming language. Python, of course, is the open source language that has been adopted by big players such as Google, YouTube and even Microsoft.
This latest version in the series, is an attempt to address what Guido van Rossum, the creator of the language considers to be 'warts', that is, areas of the language that are either inconsistent with other features, or inelegant in some other way.
Python 3.0 began life as Python 3000, a theoretical version of Python that could be produced if the language designers didn't have to consider backwards compatibility.
The first reference to this perfect version of Python was made in January 2000, giving the developers plenty time to discuss the merits of proposed changes, but serious development began a few years ago.
The new features in the language are designed to make code more efficient and readable. There is improved support for Unicode (text in foreign character sets) and an overhaul of the standard library to apply a consistent naming convention and remove rarely-used code modules.
For the full details on the changes, see the Python 3.0 Whats New page (http://docs.python.org/3.0/whatsnew/3.0.html).
Although Python 3.0 is more of a refinement to the language than a complete re-write, code produced for previous versions of the language is unlikely to run un-modified.
Because of this backwards incompatibility, development of the Python 2 series has continued in parallel – and will do for a few years, giving programmers plenty of time to prepare for the transition.
A large-scale migration will probably only occur once the array of third-party modules available for Python have been ported to the new version.
The next version in the venerable Python 2 series (2.7) will be a designed to ease the transition to the 3.0 code, by adopting more of the new features and warning developers about code that isn't compatible with the new version.