Ironclad aims, in the long term, to allow IronPython users to transparently import and use any compiled CPython extensions. Ironclad works with IronPython 2 and targets CPython 2.5 on 32-bit Windows; efforts to support other platforms are underway.
See the wiki FrontPage for instructions.
Progress
The latest release is v0.8.1, which should now be useful to quite a lot of people. The following packages have been confirmed to work (to a greater or lesser extent, as qualified parenthetically):
- numpy 1.2 (over 900 tests pass; memory-mapped files, Unicode data, and numpy.distutils don't work).
- scipy 0.7 (over 800 tests pass; some parts are extremely slow, while others are pretty fast)
- matplotlib 0.98 (ps backend can produce simple plots; pdf/svg backends should work as well, given a compatible zlib)
- bz2 from Python 2.5 (well tested)
- _hashlib, _elementtree, _socket, _ssl, winsound from Python 2.5 (import cleanly; not otherwise tested to any degree of confidence)
Other
Ironclad basically works by reimplementing the Python C API in C#, and performing a little bit of underhanded trickery to convince .pyd files to talk to our version of the API. The source distribution includes full tests and pretty good docs explaining how it works.
Ironclad is fully open source, but development is sponsored by Resolver Systems.