Yesterday I got a pitch from Laura Creighton, Samuele Pedroni (who’s appeared here before) and the rest of the PyPy team.

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?



Contributions

Comment feed for ongoing:Comments feed

From: Toby DiPasquale (Nov 09 2007, at 17:51)

Or...

...you could just fund Rubinius (http://rubini.us/) since they are taking on Ruby directly, have a very similar model to PyPy (small core VM and everything else written in the language itself), have a better chance of success (PyPy has been floundering around for many years and $2+ million USD) and has a much more vibrant community around it right now. That might be a better use of the casholaz.

[link]

From: Alexander Kellett (Nov 11 2007, at 00:40)

PyPy and Rubinius have very very little in common architecturally.

[link]

From: Seo Sanghyeon (Nov 11 2007, at 07:01)

If you think Rubinius has a better chance than PyPy, you are delusional. No insult intended, but you may actually ask Rubinius guys for how they compare. PyPy is a much more mature and advanced project.

[link]

From: Kevin Clark (Nov 12 2007, at 17:40)

Better chance at what?

[link]

From: Paul Boddie (Nov 15 2007, at 07:17)

Toby DiPasquale: "...you could just fund Rubinius (http://rubini.us/) since they are taking on Ruby directly, have a very similar model to PyPy"

They *had* a similar idea in that they wanted to write a Ruby virtual machine in Ruby. Then they backed away from that goal and decided to write one in C instead.

"(small core VM and everything else written in the language itself),"

The devil is in the details, as they say. A "Smalltalk-80 architecture", indeed: more conservative than what the Squeak people have already done; perhaps Tim would like to throw money at those people instead.

"have a better chance of success (PyPy has been floundering around for many years and $2+ million USD) and has a much more vibrant community around it right now."

Hello?! I'm not a major fan of PyPy by any means, but the project has actually delivered something. And mentioning the money is a cheap shot considering the amount of process-related work that the money had to buy.

[link]

author · Dad
colophon · rights
picture of the day
November 08, 2007
· Technology (90 fragments)
· · Dynamic Languages (45 more)

By .

The opinions expressed here
are my own, and no other party
necessarily agrees with them.

A full disclosure of my
professional interests is
on the author page.

I’m on Mastodon!