Work on the binding CPCOM servers to Python has begun. A cpcom module has been created, which allows one to call a few of the COM API functions. In particular, you can initialize and terminate the library. Types for IUnknown and IMalloc are supported.
Decision to encode the interface type in the Python type, as opposed to string encodings as supported by SWIG, is key to ensuring type safety. This will also allow methods and properties to be inherited. The use of methods and properties from Python is quite natural.
A hand-written implementation of module so that python can be a client of the LTestServer interfaces and classes has been written, and is now working. The code has only been tested on Solaris, but should port without major change to all platforms on which Python runs.
The next step will be to write the XSLT that will automatically create the binding code used to create the module. While tedious, this should be relatively straightforward now that an example implementation is available.