this week's Python resources
Kragen Sitaker
kragen@pobox.com
Tue, 28 May 2002 07:48:17 -0400 (EDT)
QOTW:
Object-oriented programming is an exceptionally bad idea which
could only have originated in California.
- Edsger Dijkstra (attributed) (quoted by Joost Jacob)
Programming Libraries:
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
runners.
http://groups.google.com/groups?selm=acr79g%24fka%40dispatch.concentric.net
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.
http://www.nuxeo.org/nuxdocument/
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.
http://biggles.sourceforge.net/
Holger Krekel mentions that he has rewritten rlcompleter, the
readline completer module, so that it works better. Michael
Hudson is impressed.
http://groups.google.com/groups?selm=mailman.1022012880.3531.python-list%40python.org
PySQLite, a DB-API-compliant interface to the free-software SQLite
SQL embedded database library, which is written in C, has released
version 0.1.
http://groups.google.com/groups?selm=mailman.1022168306.17444.python-list%40python.org
Greg Ewing posted some portable pathname manipulation utility
functions.
http://groups.google.com/groups?selm=3CEC5E05.396422FC%40replyto.address.invalid
Python Programs:
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.
http://groups.google.com/groups?selm=acekba%247a0%240%40dosa.alt.net
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.
http://www.biology.duke.edu/computer/unix/current/
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
enclosing scope.
http://groups.google.com/groups?selm=acu6v9%24hlp%240%40216.39.172.122
Paul Prescod has posted an eloquent apology for Python's design
philosophy, entitled "On the Relationship Between Python and
Lisp."
http://www.prescod.net/python/IsPythonLisp.html
Quinn Dunkan had some 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.
http://groups.google.com/groups?selm=slrnaf293e.td5.quinn%40bolivar.ugcs.caltech.edu
http://groups.google.com/groups?selm=slrnaf2aah.td5.quinn%40bolivar.ugcs.caltech.edu
There was some discussion about a general framework for adding new
grammar rules to Python.
http://groups.google.com/groups?selm=dopkeusu5c9m8ou2clt89b4dbrmmtd2tre%404ax.com
Andrew Dalke, Hans Nowak, and Steven Majewski came up with some
frighteningly creative ways of writing the conditional operator in
Python.
http://groups.google.com/groups?selm=Pine.OSX.4.43.0205221906390.17977-100000%40d-128-61-180.bootp.virginia.edu
There was more discussion about Stackless Python, Limbo, Alef,
CSP, Occam, and Transputer hardware.
http://groups.google.com/groups?selm=uerd0l9d54dac9%40corp.supernews.com
In fact, there was so much discussion that Christian Tismer got
irritated trying to sort through it all.
http://groups.google.com/groups?selm=mailman.1022408207.8430.python-list%40python.org
Oren Tirosh would like to have 'for any' and 'for every'
boolean expressions modeled after list comprehensions.
http://groups.google.com/groups?selm=mailman.1022410902.27422.python-list%40python.org
Ferdinand Jamitzky wants reduce-comprehensions, analogous to list
comprehensions.
http://groups.google.com/groups?selm=f32195af.0205261316.2482d4ac%40posting.google.com
Simon Budig complains about the statement/expression dichotomy.
http://groups.google.com/groups?selm=3cf27dda%40si-nic.hrz.uni-siegen.de
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.
http://groups.google.com/groups?selm=mailman.1022289403.22367.python-list%40python.org
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.
http://groups.google.com/groups?selm=3CEBAA0E.20006%40bigfoot.com
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.
http://groups.google.com/groups?selm=MPG.175c24a5538e5d7a989687%40news.direcpc.com
Yet another person is puzzled by the new property machinery
almost, but not quite, working in old-style classes.
http://groups.google.com/groups?selm=3CEDB5FB.49EEEDD9%40irl.cri.nz
Matt Kimball discovers that the problems with threading fairness
he was having last week weren't really Python's fault:
http://groups.google.com/groups?selm=mailman.1021993724.8792.python-list%40python.org
Jeff Epler posts a program to get Tkinter text widgets to size
themselves to fit the text within them. It's pretty ugly.
http://groups.google.com/groups?selm=mailman.1021999536.1228.python-list%40python.org
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.
http://groups.google.com/groups?selm=mailman.1022061577.7842.python-list%40python.org
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.
http://groups.google.com/groups?selm=mailman.1022065417.1277.python-list%40python.org
Paul Boddie and others discussed "cross-site scripting"
vulnerabilities in Python CGI scripts and other dynamic page
generators.
http://groups.google.com/groups?selm=23891c90.0205240307.3eca7a57%40posting.google.com
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
the threading.
http://groups.google.com/groups?selm=acqha3%24gli%241%40news1.xs4all.nl
Scott Gilbert suggests a way to return 'array' objects from a C
extension module.
http://groups.google.com/groups?selm=79b2b0bb.0205271824.56773e2b%40posting.google.com
Miscellaneous:
EuroPython 2002 is next month, June 26-28, in Charleroi, Belgium.
http://groups.google.com/groups?selm=acg6oc%24gh2%241%40newshost.accu.uu.nl
Alex Martelli, a C++ expert, eloquently explained 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
language.
http://groups.google.com/groups?selm=zEMA8.2731%24CN3.101018%40news2.tin.it
Python 2.2.1 runs on MS-DOS; I missed this last week.
http://groups.google.com/groups?selm=3ce7fc1f%240%2426970%249b622d9e%40news.freenet.de
Lysator is building a build farm for Python called the Snake Farm.
This should get build problems on various platforms ironed out in
a hurry.
http://groups.google.com/groups?selm=mailman.1022222381.31604.python-list%40python.org
A couple of people requested help learning pyGTK; responses
pointed to several resources.
Sample Applications:
http://landialler.sourceforge.net/ --- a LAN dialer
http://oomadness.tuxfamily.org/gtablature/en/ --- GTablature
http://gramps.sourceforge.net/ --- gramps
Tutorials:
http://www.icon.co.za/%7Ezapr/Project1.html
http://www.moeraki.com/pygtktutorial/gtk-tut.html
There was some discussion about how to handle callbacks written in
Python in multithreaded applications.
http://groups.google.com/groups?selm=Xns9217DBE6F4C1Bcliechtigmxnet%4062.2.16.82
James Besemer wrote 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.)
http://groups.google.com/groups?selm=mailman.1020849410.32598.python-list%40python.org
Xavier Monsegur wanted to found a New York City Python Users' Group.
http://groups.google.com/groups?selm=mailman.1022044417.14752.python-list%40python.org
Various folks tried to figure out how to cite the Python language
in academic papers.
http://groups.google.com/groups?selm=7BEH8.1252%24H67.7649%40tor-nn1.netcom.ca
http://groups.google.com/groups?selm=mailman.1022297561.14994.python-list%40python.org
http://groups.google.com/groups?selm=4L4I8.9196%24p56.2659365%40newsb.telia.net
Mark Hadfield got the md5 module to work on his Cray T3E.
http://groups.google.com/groups?selm=acej75%24c0g%241%40newsreader.mailgate.org
Not surprisingly, self.__foo-style private attributes don't
interact well with __slots__, just as they didn't interact well
with __getattr__ and __setattr__. A new user was puzzled.
http://groups.google.com/groups?selm=Xns9218B57730E9cliechtigmxnet%4062.2.16.82
Damian Menscher wants to be able to display Numerical Python
arrays in a more compact form.
http://groups.google.com/groups?selm=awiH8.10159%24U7.121015%40vixen.cso.uiuc.edu
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.
http://groups.google.com/groups?selm=e786d63d.0205262032.5f6182e4%40posting.google.com
http://dohao.org/python/
William Dodé has set up a French-language Wiki about Python.
http://wikipython.tuxfamily.org
--
<kragen@pobox.com> Kragen Sitaker <http://www.pobox.com/~kragen/>
> Then the object is collected. The finalizer is not run a second time.
Can you cast a spell to resoul an undead object? Do the resouled undead
differ from the living? -- Charles Fiterman on gclist@iecc.com