Documente Academic
Documente Profesional
Documente Cultură
EuroPython June 27, 2005 Guido van Rossum Elemental Security, Inc.
guido@elementalsecurity.com guido@python.org
Python's Birth
Xmas 1989 About two weeks of time off with no plans Had it all in my head Fat Mac with Lightspeed C on 20 MB hard drive First code: a parser generator
User-defined classes were added within the first year, but for a long time remained second-class citizens (until new-style classes in Python 2.2)
June 27, 2005 2005 Guido van Rossum
Orthogonality an important principle No limits: values can be as large as fits in memory Numbers represent mathematical values, not bits
Appealed most to people with insufficient computer access; hard to establish "early adopter" community in Unix world due to lack of OS integration
June 27, 2005 2005 Guido van Rossum
What I Changed
Extensibility an implementation cornerstone Built-in files; other OS functionality in an extension Returned to standard programming terminology Underscore in identifiers; lowercase keywords List has ordering; dictionary is hash table Optimize for small strings (memcpy is very fast) Assignment: variable = expression Added exceptions, try/except, try/finally (Modula 3) Dropped the integrated editing environment
Appealed to the Unix world: imitate /bin/sh behavior, # for comments, support #!, access most low-level Unix system calls (but also PC/Mac ports!)
June 27, 2005 2005 Guido van Rossum
10
11
12
Question Time
13