They’ve defined RPython, a Python subset, and they have a translator (I’d call it a compiler) that can translate RPython programs into object language or Java bytecodes. PyPy itself is an RPython program that implements Python; they claim to have pretty well all of 2.4, and think they can approach performance parity.
It’s all Open Source of course, MIT license.
They also have some neat object-proxying tricks which they use to do things like give Python a “taint” capability.
The core idea is this: Use RPython to implement your favorite dynamic language, rather than C. Such an implementation ought to be immensely more flexible and maintainable; simply because Python is immensely more flexible and maintainable than C.
At the moment, they’re looking for someone to fund continued work on applying PyPy to, well, any language you can think of. I might be interested in supporting work on Ruby; hey, there are already four credible alternative implementations working in parallel, why not make it five? Others might be interested in looking at PHP or, well, who knows... Do you depend on a dynamic language whose implementation you’re not crazy about?