Monday, March 10, 2008

JRuby and Jython: Groovy's peers

Sun Microsystems recently hired Frank Wierzbicki and Ted Leung to work on Jython full-time at Sun. Glen Smith recently blogged concerning this and his meeting with James Gosling of Sun in Australia:
“One question that was asked was about the recent hires around JRuby & Jython, is Sun sidelining Groovy? James had some nice things to say about Groovy, actually, and reiterated that really it's a numbers game for Sun. Big numbers of Ruby and Python developers to lure to the platform, fewer (but growing) numbers of Groovy developers already productive there.”

In Charles Nutter's blog entry on the same subject he writes:
“So what does this mean for Sun? Well, it means we're serious about improving support for Python on Sun platforms. Jython is a big part of the story, since they have many challenges similar to JRuby, but a bunch of new ones as well. So we'll be looking to share key libraries and subsystems as much as possible, and we'll start looking at Jython as another driver for future JVM and platform improvement.”

As suggested in a recent blog entry of mine, the JVM needs to keep up with Microsoft's DLR support of IronPython and IronRuby. By adding the Jython experts to the JRuby ones already on the payroll, Sun is better able to build a solid MLVM to compete. Groovy must consider whether to also program to such a MLVM, about which Alex Tkachman says: “I think it is a serious effort for Groovy but i am for 100% sure it is doable. There is nothing I am aware about that prevent that in theory.”

Now Charles Nutter has blogged about Duby, JRuby's static-mode answer to what some Groovy developers would like for Groovy but others don't.

If Sun builds a MLVM with a tree-like DLR-style interface, and re-engineers JRuby and Jython for it, then Groovy must follow suit to stay relevant. But Groovy doesn't need to build a static Doovy mode because Java is Groovy's Duby.