Well, I guess I've been busy, 'cause I've not written anything here for a while. I should develop a better habit of it.
For now, we're done with the second alpha release for Python 2.1, so that'll give us a little time to catch up in other work, like the stuff our employer really wants us to do. I've been working on a project for Zope called Parsed XML. There are a handful of us working on it, but I'm mostly working on the DOM core. This project is moving along quite rapidly, and I'm a little skeptical of saying that we're anywhere near ready for calling a release `stable.' For some reason, I doubt the choice will be mine! Regardless, it has been interesting working with acquisition for the first time -- it feels pretty fragile, though I think I understand why it's considered desirable in the context of Zope.
The continuation of the development of James Clark's Expat XML parser has been slow. Clark Cooper and myself are working on maintaining Expat and developing it to provide more information via the API so that scripting languages can pick up a lot more (Clark maintains the Perl interface to Expat, and I'm extending the Python binding). We're also building the parser as a dynamically-linked library so that client code doesn't run into problems when multiple components link to the library -- this is a problem that has been noticed in the context of Apache modules, and can easily be found elsewhere as well.
The new Python bindings to Expat will offer much more information to the application builder. I'm using the enhanced bindings in the Parsed XML project and hope to merge it into PyXML and Python after resolving a few more issues.
Python 2.1a2 contains my implementation of weak references, using an approach to invalidation which we think works really well with reference counting. My next task for Python will be to convert the build process for the documentation to use a non-recursive Makefile, similar to what Neil did for the build of the interpreter. It wouldn't take long if I'd just sit down and do it!