Dynamic Languages on the JVM
I’ve been focusing on Python lately, mostly for web development. It is strange, but it doesn’t quite feel ready yet. Obviously, there are large production sites deploying on some of the frameworks like Django, but compared to Java and Tomcat, Python web development is still in the infant stages. Even so, the productivity that Python provides over Java is astonishing. PHP just makes me laugh, though PHP 5 does clean up a lot of the warts. The only good thing I can say about PHP right now is that it is ubiquitous and easy to learn. I don’t know how I missed it but in late 2004, there was an awesome meeting of the minds at Sun which included:
- Larry Wall
- Guido van Rossum
- Jython folks
- Groovy folks
- Parrot people

If Sun would release the JVM under the GPL or BSD or even the Mozilla MPL, and create awesome support for dynamic languages, it would explode all over the web server scene. Heck, I would pay good money for a JVM that had first rate support for Python. It would also help consolidate Ruby, Python, Perl and Java. I guess Parrot could do this, but honestly it will take years for it to be as fast as the JVM on all the platforms Java currently supports. The JVM is an impressive bit of Sun kit, but Sun has tied too closely to the Java language. Sun, open up the JVM even if you keep the Java spec under your control. This is the best of both worlds and would take a major bite out of .NET. Unfortunately, Sun will probably let the JVM wither away just like they are doing with Solaris. Sigh.