Presentation is loading. Please wait.

Presentation is loading. Please wait.

28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 1 Le Python à Paris Guido van Rossum CNRI (Corporation for National Research Initiatives, Reston,

Similar presentations


Presentation on theme: "28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 1 Le Python à Paris Guido van Rossum CNRI (Corporation for National Research Initiatives, Reston,"— Presentation transcript:

1 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 1 Le Python à Paris Guido van Rossum CNRI (Corporation for National Research Initiatives, Reston, Virginia, USA) guido@python.org http://www.python.org

2 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 2 About me 12 years at CWI (Amsterdam) 4 years at CNRI (Reston, USA) Interests: languages, programming tools, user interface design, distributed systems, multimedia,... Python was a logical next step...

3 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 3 What I do At CWI, worked on: ABC, Python’s predecessor Amoeba, novel distributed OS in ’80s Hypermedia editor in Python –(now: GRINS@oratrix.nl) Python At CNRI, working on: Knowbot System, Mobile agents Python

4 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 4 Python buzzword bingo object-oriented scripting rapid prototyping steering rapid application development P R O D U C T I V I T Y

5 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 5 More buzzwords interactive interpreted elegant easy to learn, use embeddable portable free, open source

6 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 6 Python's early days Born Christmas 1989 Named after Monty Python –“Nobody expects the Spanish Inquisition” Quickly used internally at CWI (scripting Amoeba, multimedia experiments,...) First public release February 1991 Unix sources newsgroup BSD style license (up to today)

7 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 7 Python’s growth Releases 0.9.0-0.9.8, 1.0, 1.1, 1.2 from CWI (1991-1994) ftp, mailing list, newsgroup Releases 1.3, 1.4, 1.5, 1.5.1, 1.5.2 from CNRI (1995-1999) website, Python Software Activity, SIGs books, workshops, US-based conferences Traffic doubling every year

8 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 8 What next? (Looking for support?) Several new books in 1999 Python Consortium Digital Creations, Foretec, Interet Lawrence Livermore National Labs (LLNL)...you? DARPA funding: “Computer Programming for Everybody” –more about this later

9 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 9 Applications The web Zope (dynamic website manager) –www.zope.org (Digital Creations) Mailman (the GNU mailing list manager) –www.list.org much, much more Java JPython - integrated scripting for Java –www.jpython.org (CNRI)

10 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 10 More applications GUI development IDLE (cross-platform IDE for Python) Windows COM, MFC PythonWin (Mark Hammond) write COM clients, servers in Python! Database access all commercial, free databases see db-sig archives

11 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 11 Who uses it? (sample) Yahoo - mail.yahoo.com Industrial Light&Magic - everything Infoseek - Ultraseek site searcher LLNL - steering large numeric apps Microsoft - commerce server 1.0 Letterror+ - RoboFog Lots more...

12 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 12 IDLE Interactive DeveLopment Environment Written in Python using Tkinter Portable (Unix, Windows, Mac) Under development Watch an interactive session now!

13 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 13 The Future

14 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 14 Python 1.6 Last of 1.x breed; release in 2000 Try to be compatible with 1.5.x Serious reworking of internals Fix most urgent problems Some new syntax May push some ideas to 2.0

15 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 15 Python 1.6 plans Unicode! (but how much?) Rich comparisons; coercions Flexible import hooks Better install/build support Restructure Virtual Machine allow 3rd party VM plugins (Christian? :-) support small footprint versions –e.g. PalmPilot

16 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 16 Possible new syntax Parallel for loop for x in L1; y in L2: print x, “ ”, y Extended slicing for all sequences x[0:10:2] means: y = [] for i in range(0,10,2): y.append(x[i]) return y

17 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 17 More wishes? Suggestions?

18 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 18 Python 2.0 –Incompatible: C API level, for advanced Python users –Release in 2001+ –Total rewrite in C++? (or Java???) –Opportunity for radical changes –Fix major problems with language –First releases may be slower than 1.x –Focus on VM; more stuff in Python

19 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 19 Wild ideas Thinking about... Types are classes Incorporate NumPy array type Optional static typing Assign ops (+= etc.) Packagized, renamed library

20 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 20 Even wilder ideas Dreaming about... Conservative GC Autowrap of shared libraries –(Using C++ dynamic type info) Closures (well… some people are:)

21 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 21 Simplify! lambda (or fix it - def in expressions?) Tuples in argument lists def foo(a, (b,c), (d,e), f): … can replace with optional static typing range() and xrange() replace with [:10], [0:10:2] optimize for i in [:10]:... Obsolete library modules

22 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 22 Expected problems Monumental effort Is C++ ready? Books, docs need to be rewritten JPython synchronization –two rewrites! Key extension modules

23 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 23 Computer Programming for Everybody DARPA funding for Python…?

24 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 24 Objective Empower computer users: –Make programming easier! Learning how to program a computer is just too hard... –But it shouldn’t be, and it needn’t be!

25 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 25 Current Limitations Everything’s too hard for novices: Learning how to program (concepts) Using a programming language (tools) Modifying existing programs (software, motivating examples) Learning Modifying Using Too Hard!

26 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 26 New Approach Use Python* as first language: –Learning - learn Python in 20 hours? –Using - novice-friendly tools –Modifying - interesting 3-D worlds Engage larger community –a billion users?!

27 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 27 Evidence of Success Novices like Python –derives from teaching language (ABC) –a 10-year old can learn it! Experts choose Python –for situations where novices must modify or read code –to create serious software (not just a teaching language)

28 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 28 Impact if Successful Much better understanding and use of computers by non-experts Millions (billions!) of programmers Real software significantly more accessible to regular users Users customize their own software Abundant personalizable software

29 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 29 Why Python? Why not Java or C++? system languages, not for teaching superficial details obscure concepts Why not Perl? too many ideosyncracies Why not Logo? Python is also used in the real world

30 28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 30 Questions? http://www.python.org /doc /download


Download ppt "28 May, 1999Le Copyright © 1999 CNRI, Guido van Rossum 1 Le Python à Paris Guido van Rossum CNRI (Corporation for National Research Initiatives, Reston,"

Similar presentations


Ads by Google