Friday, November 6, 2009

Data types

Not a strongly typed language, not require you to define the type.

Built-in types
Numeric Types
  • Integers
  • Long Integers
  • Octal and Hexadecimal
  • Floating Point Numbers

Strings

Sequences
  • List
  • Tuple 
  • Dictionary

Advanced types 
Classes and Objects 
Complex Type
Generator Type
None Type
Unicode Type 

Advantages vs. disadvantages



Advantages
  • Object oriented
  • Cross platform
  • Distributed in open source
  • Licensed under a public access license
  • Easy to integrate it with new technology
  • Interact with other languages
  • Easy language (lack of syntax)
  • Modulable technology
  • Capable web development

Disadvatages
  • Interpreted language (slower runtime)
  • Deal with the personal preferences of developers (language translation, documentation and the use of modules)
  • Hard work to translate into other languages

Wednesday, November 4, 2009

History of Python

Author of the Python programming language: Guido van Rossum
The basis for the Python language was ABC (Amobea operating system) which similar to BASIC or Pascal. Amoeba was an experimental, microkernel-based distributed operating system developed by Andrew S. Tanenbaum and others at the Vrije Universiteit. The aim of the Amoeba project was to build a timesharing system.
ABC has some disadvantages:
  • not well structured error handling
  • monolithic structure
van Rossum took the best features from ABC and built a new language, Python.

van Rossum moved to BeOpen labs, and as the great tradition of all programming tasks, the team “borrowed” from other languages to extend their own. Python 2.0 borrowed from a language called Haskell and acquired eits most important feature: list comprehensions.


Timeline
Release Date
Version
December, 1989
Implementation started
1990
Internal releases at CWI
February 20, 1991
0.9.0 (released to alt.sources)
February, 1991
0.9.1
Autumn, 1991
0.9.2
December 24, 1991
0.9.4
January 2, 1992
0.9.5 (Macintosh only)
April 6, 1992
0.9.6
Unknown, 1992
0.9.7beta
January 9, 1993
0.9.8
July 29, 1993
0.9.9
January 26, 1994
1.0.0
February 15, 1994
1.0.2
May 4, 1994
1.0.3
July 14, 1994
1.0.4
October 11, 1994
1.1
November 10, 1994
1.1.1
April 13, 1995
1.2
October 13, 1995
1.3
October 25, 1996
1.4
January 3, 1998
1.5
October 31, 1998
1.5.1
April 13, 1999
1.5.2
September 5, 2000
1.6
October 16, 2000
2.0
April 17, 2001
2.1
December 21, 2001
2.2
July 29, 2003
2.3
November 30, 2004
2.4
September 16, 2006
2.5
October 1, 2008
2.6
December 3, 2008
3.0