On the subject of the GIL again: I think it would be far, far more interesting to make multiple-process Python programs easier to write -- to make interprocess communication seemless, and just generally to establish robust (and easy to use!) patterns for that kind of programming. The benefits would far excede the benefits of mere SMP threading performance. But even right now, I imagine it's way easier to write a multi-process Python program than a threaded Java program.
On prototypes, Hans Nowak has played around with systems implemented in Python, in posts like:
I think Prothon takes it a bit further... but maybe not that much further once you look past the syntax.