Python-URL! - Weekly Python News and Links (May 28)
May 29, 2002, 05:01 (0 Talkback[s])
QOTW: "Object-oriented programming is an exceptionally bad idea which
could only have originated in California."
- Edsger Dijkstra (attributed) (quoted by Joost Jacob)
PyUnitTestBrowser, a GUI test runner for PyUnit ('import
unittest') tests, has been released, because its author was
terribly disappointed by the primitive nature of existing GUI test
NuxDocument, a Zope product that converts files from various
formats into HTML and plain text, supporting Microsoft Word,
Excel, PowerPoint, OpenOffice formats, RTF, and PDF, released
version 0.9.2 on 2002-05-27.
Biggles, a module for publication-quality 2D scientific data plots
with output to PostScript, X11, and some raster formats, released
version 1.6.2 on 2002-05-26.
Holger Krekel mentions that he has rewritten rlcompleter, the
readline completer module, so that it works better. Michael
Hudson is impressed.
PySQLite, a DB-API-compliant interface to the free-software SQLite
SQL embedded database library, which is written in C, has released
Greg Ewing posts portable pathname manipulation utility functions.
JinSitu, an interactive introspection environment for Java and
Jython, with Emacs-style interactive evaluation, an object tree
display, and javadoc integration, has released version 0.2.
Current, a server for Red Hat's up2date protocol for distributing
software updates to a group of machines, released stable version
1.0.4 and development version 1.3.0 on 2002-05-25.
Discussion on Features of Python:
Bengt Richter wonders how much code would break if list
comprehensions had their own scopes (as new list comprehension
users usually expect them to) instead of mutating variables in the
Paul Prescod has posted an eloquent apology for Python's design
philosophy, entitled "On the Relationship Between Python and
Quinn Dunkan has interesting thoughts about when to use
tuples and when to use lists in Python, and when function syntax
is preferable to method syntax and vice versa.
There was discussion about a general framework for adding new
grammar rules to Python.
Andrew Dalke, Hans Nowak, and Steven Majewski generate frighteningly
creative ways of writing the conditional operator in Python.
There was more discussion about Stackless Python, Limbo, Alef,
CSP, Occam, and Transputer hardware.
In fact, there was so much discussion that Christian Tismer got
irritated trying to sort through it all.
Oren Tirosh would like to have 'for any' and 'for every'
boolean expressions modeled after list comprehensions.
Ferdinand Jamitzky wants reduce-comprehensions, analogous to list
Simon Budig complains about the statement/expression dichotomy.
Christopher Craig has implemented Karatsuba multiplication for
Python long integers, so multiplying pairs of integers both of
which are larger than about 2**120 (roughly 10**36, an American
undecillion) should be significantly faster now.
Problems and Solutions:
Johann Höchtl wishes Python applications could be executed from
.par files, like Java .jar files, so they were easier to download.
Mark Chalkley, too, would like Python programs to be easier to
distribute; he currently uses Perl instead, apparently because
it's easier to distribute Perl programs.
Yet another person is puzzled by the new property machinery
almost, but not quite, working in old-style classes.
Matt Kimball discovers that the problems with threading fairness
he was having last week weren't really Python's fault:
Jeff Epler posts a program to get Tkinter text widgets to size
themselves to fit the text within them. It's pretty ugly.
Oleg Broytmann describes how he builds the Python interpreter in a
shared library, more or less by hand, on his Linux box, and
mentions that Python 2.3 will build shared libraries by default.
Michael Williams would like to be able to emulate the Pascal
'readln' routine in Python for the purpose of teaching
programming. The nearest solution in the ensuing thread is the
dreaded Python 'input', which trusts its input.
Paul Boddie and others discussed "cross-site scripting"
vulnerabilities in Python CGI scripts and other dynamic page
Irmen de Jong is working on adding a select loop to Pyro, which is
threaded, and he asked for help integrating the select loop with
Scott Gilbert suggests a way to return 'array' objects from a C
EuroPython 2002 is next month, June 26-28, in Charleroi, Belgium.
C++ expert Alex Martelli eloquently explains why having a
feature in a language means that programmers have to learn it and
why it's best not to have multiple different ways to express
exactly the same thing, and therefore, why C++ is a terrible
Python 2.2.1 runs on MS-DOS; I missed this last week.
Lysator is building a build farm for Python called the Snake Farm.
This should get build problems on various platforms ironed out in
A couple of people request help learning pyGTK; responses
pointed to several resources.
http://landialler.sourceforge.net/ --- a LAN dialer
http://oomadness.tuxfamily.org/gtablature/en/ --- GTablature
http://gramps.sourceforge.net/ --- gramps
How does one handle callbacks written in Python in multithreaded
James Besemer writes a very long, but still interesting,
description of his experience with performance-critical
applications and what parts of those apps Python was good for (and
what parts it wasn't.)
Xavier Monsegur wants to found a New York City Python Users' Group.
Various folks try to cite the Python language in academic papers.
Mark Hadfield gets the md5 module to work on his Cray T3E.
Not surprisingly, self.__foo-style private attributes don't
interact well with __slots__, just as they didn't interact well
with __getattr_ and _setattr__. This puzzles a new user.
Damian Menscher wants to be able to display Numerical Python
arrays in a more compact form.
Wenshan Du, the amazing guy who hacked Chinese language support
into Python (so he didn't have to write variable names in English)
a couple of weeks ago, has set up a new web site called "Python
World". Most of the content is presently only in Simplified
Chinese, but he plans to translate it.
William Dodé has set up a French-language Wiki about Python.
Everything you want is probably one or two clicks away in these pages:
Python.org's Python Language Website is the traditional
center of Pythonia
Notice especially the master FAQ
PythonWare complements the digest you're reading with the
daily python url
Mygale is a news-gathering webcrawler that specializes in (new)
World-Wide Web articles related to Python.
While cosmetically similar, Mygale and the Daily Python-URL
are utterly different in their technologies and generally in
comp.lang.python.announce announces new Python software. Be
sure to scan this newly-revitalized newsgroup at least weekly.
Michael Hudson continued Andrew Kuchling's marvelous tradition
of summarizing action on the python-dev mailing list once every
other week, into July 2001. Any volunteers to re-start this
The Vaults of Parnassus ambitiously collect Python resources
Much of Python's real work takes place on Special-Interest Group
The Python Software Foundation has replaced the Python Consortium
as an independent nexus of activity
Cetus does much of the same
The old Python "To-Do List" now lives principally in a
The online Python Journal is posted at pythonjournal.cognizor.com/.
firstname.lastname@example.org and email@example.com
welcome submission of material that helps people's understanding
of Python use, and offer Web presentation of your work.
*Py: the Journal of the Python Language*
Links2Go is a new semi-automated link collection; it's impressive
what AI can generate
Tenth International Python Conference
Archive probing tricks of the trade:
Previous - (U)se the (R)esource, (L)uke! - messages are listed here:
Suggestions/corrections for next week's posting are always welcome.
[http://www.egroups.com/list/python-url-leads/ is hibernating. Just
e-mail us ideas directly.]
To receive a new issue of this posting in e-mail each Monday morning
(approximately), ask <firstname.lastname@example.org> to subscribe. Mention
-- The Python-URL! Team--
Dr. Dobb's Journal (http://www.ddj.com) is pleased to participate in and
sponsor the "Python-URL!" project.