Python has undeniably become one of the most adapted programming languages in recent times. Simple and readable coding lines being the integral reason for the rise, Python has been widely used in every platform. From building a website, GUI Application, Smartphone apps to gaming, the influence of Python has been monumental and is rapidly strengthening its base. It has come a long way from 1989; and from the growth ratio witnessed, Python’s chart shows no negative inclination.
How did Python become what it is today?
The Hobby Project:
Winter of 1989 – Guido Van Rossum had to keep himself occupied and went on to create python as a hobby project. It was intended to be an interpreter for a new language which now is changing how programming is done. Named after a BBC TV program Monty Python; (which in originality wasn’t named with any meaningful intent). The code, later on, was made public in the year 1991.
Originally designed to succeed the ABC programming language, Van Rossum continually showed enthusiasm in making Python better and adaptable for programmers around the world. The title Benevolent Dictator For Life (BDFL) was bestowed upon him by the Python Community.
Python has been segregated under 3 versions till date and an expected fourth version in the year 2023.
Python Version 1:
The first major version of Python (Python 1.0) was released in the year 1994, January. Inclusion of user intrinsic features and tools essential for programming such as the Lambda, Map & Filter were a part of the release. After a few more subversion releases Python took a big leap in version 1.4. Among the many new features, the notable 3 are
- Keyword Augments
- Built-in support for complex numbers
- Data Hiding (Basic Version)
For a programming language to achieve this in its inception was huge. The vision though of Van Rossum was to build a ‘clean syntax’ that would facilitate more programmers and users to adopt python. The later versions of python; version 1.5 and 1.6 were minor updates released in the year 1997, December and 2000, September respectively. Though the features provided by the first version of python weren’t up to the standards provided by the then major programming languages, a solid foundation was installed for the development.
Python Version 2:
In October 2000, Python 2.0 was released with the new list comprehension feature and a garbage collection system. The syntax for the list comprehension feature was inspired by other functional programming languages like Haskell. But Python 2.0, unlike Haskell, gave preference to alphabetic keywords over punctuation characters. Also, the garbage collection system effectuated the collection of reference cycles. The major release was followed by several minor releases. These releases added a number of functionalities to the programming language like support for nested scopes, and unification of Python’s classes and types into a single hierarchy. The Python Software Foundation has already announced that there would be no Python 2.8. However, the Foundation will provide support to version 2.7 of the programming language till 2020.
Python Version 3:
Python 3.0 was released in December 2008. It came with several new features and enhancements, along with a number of deprecated features. The deprecated features and backward incompatibility make version 3 of Python completely different from earlier versions. So many Python developers still use Python 2.6 or 2.7 to avail the features deprecated from last major release. However, the new features of Python 3 made it more modern and popular. Many developers even switched to version 3.0 of the programming language to avail these awesome features.
Python 3.0 replaced the print statement with the built-in print() function while allowing programmers to use a custom separator between lines. Likewise, it simplified the rules of ordering comparison. If the operands are not organized in a natural and meaningful order, the ordering comparison operators can now raise a TypeError exception. Version 3 of the programming language further uses text and data instead of Unicode and 8-bit strings. While treating all code as Unicode by default it represents binary data as encoded Unicode.
As Python 3 is backwards incompatible, the programmers cannot access features like string exceptions, old-style classes, and implicit relative imports. Also, the developers must be familiar with changes made to syntax and APIs.
They can use a tool called “2to3” to migrate their application from Python 2 to 3 smoothly.
The tool highlights incompatibility and areas of concern through comments and warnings. The comments help programmers to make changes to the code and upgrade their existing applications to the latest version of programming language.
At present, programmers can choose either version 3.4.3 or 2.7.10 of Python. Python 2.7 enables developers to avail improved numeric handling and enhancements for the standard library. The version further makes it easier for developers to migrate to Python 3. On the other hand, Python 3.4 comes with several new features and library modules, security improvements and CPython implementation improvements.
However, a number of features are deprecated in both Python API and programming language. The developers can still use Python 3.4 to avail support in the longer run.