E-Scribe News : a programmer’s blog

About Me

PBX I'm Paul Bissex, and e-scribe.com is my consulting business. I build web applications using open source software, especially Django. In the '90s I did graphic design for newspapers and magazines. Then I wrote technology commentary and reviews for Wired, Salon.com, Chicago Tribune, and lots of little places you've never heard of. Feel free to email me.

Book

I'm co-author of "Python Web Development with Django", an excellent guide to my favorite web framework. Published by Addison-Wesley, it is available from Amazon and your favorite technical bookstore as well.

Colophon

Built using Django, served by Apache and mod_wsgi. The database is SQLite. The operating system is FreeBSD, on a VPS hosted at Johncompanies.com. Comment-spam protection by Akismet. Vintage topo imagery from the Maptech archive. The markup engine is Markdown.

Pile o'Tags

Stuff I Use

Akismet, bitbucket, del.icio.us, Django, Emacs, FreeBSD, Git, jQuery, LaunchBar, Markdown, Mercurial, OS X, Postfix, Python, Review Board, S3, SQLite, TextMate, Ubuntu Linux

Spam Report

At least 96060 pieces of comment spam killed since January 2008, mostly via Akismet.

State of the Python Union

Belatedly, here are my notes from Guido van Rossum's "State of the Python Union" talk this past Wednesday.

Guido discusses (with illustrations) his recent eye problems.

SD Magazine/Jolt Productiviity Award given to Python 2.4. O'Reilly Python book sales are up. Unscientifically extracted Sourceforge stats: about 4000 python projects.

Discussion of PEP 342 and PEP 343 broke records on python-dev ("What about decorators?" somebody asks. "I think this was worse," Guido says.)

PEP 342: Generator enhancements. Can we make yield do some of the things that it does in Ruby? Yield becomes an expression instead of a statement.

PEP 343: The "with" statement. Sort of syntactic sugar on try-finally. He abandoned his hope of a Pascal-style "with" thanks to finding a web posting from the C# team on why that wasn't a good idea.

"Hopeful PEPs": 3000, 344, 341. Seemed more mixed on 315, 246, 245.

Exception reform. Possible new exception hierarchy. Basic idea is to prevent a bare "except:" from catching critical things like SystemExit, MemoryError, and KeyboardInterrupt -- in general, you want these things to kill your app. Showed detailed chart of proposed new hierarchy, less radical than earlier proposals.

Python 3.0 will be throwing out classic classes, string exceptions, etc. Before it arrives, many of its additions will appear in 2.5+, some by default, some via future. There will be a period of parallel development in 2.x and 3.x.

Python 3.0 will not be a rewrite of the interpreter.

Library restructuring needs a champion! Any volunteers?

Most controversial thing that might or might not make it in to Python 3.0: Optional type declarations. Could help with documentation, IDEs, PyChecker.

def f(x: str, y: list[int], z: file|None = None)->bool:

It's intentionally Pascal-like, he says. Pascal the first language that made him aware of choices in language design.

My notes end here. Feel free to post comments filling in any critical gaps.

Update: Powerpoint slides from the talk are now available at python.org.

Friday, August 5th, 2005
+

Post a comment

Thanks for reading! Please note: Your comment will not appear until approved, which may take a few hours or more. Spammers will be torpedoed.


(Will not be shared)

(Optional)