Thursday, August 23, 2007

Non-Jython News and the irrelevance of Jython

So JDJ has an article on a major upgrade in Jython 2.2

Jython 2.2 has support for most of Python 2.2 and numerous features from Python 2.3. The new release - the first major overhaul in 4 years - includes many major changes:

* new-style classes
* Java Collections integration
* PEP 302 implementation
* iterators
* generators
* __future__ division
* support for running on JDK1.5 and 1.6
* new installer
* a significant number of features to bring Jython in line with CPython

Compatible with 2.2? Who cares? Given the incompatibilities between 2.3 and 2.4 (let alone 2.2 and 2.4) this makes Jython basically unusable.

JRuby has clearly won the war here in terms of major scripting languages to use with Java and that is too bad.


Clark Updike said...

Unusable? Uhhh, depends what your trying to do with it--don't you think. Jython 2.1 was usable. Framing things as a "war" is counter-productive. I see Charles Nutter on both the jython and groovy lists and he's a big proponent of synergy between the jvm dynamic languages. Python will be around a long time, and as a result, so will jython. And don't be too surprised if the next release of jython is actually 2.4


Matt Franz said...

What are blogs if not hyperbole and posturing? :)

A year ago for a project I started out with thinking I could use Jython 2.2beta but ended with a pure Python 2.4 solution because the API differences were just too annoying. I also found using Jython sockets weren't robust enough for event a simple webapp scanner.

For me the whole point of using a Java scripting language is language/API compatibility between the J and C implementations. As a result I'm puzzled why anyone would bother with Groovy. Personally, I have enough time keeping the differences between Java/Ruby/Python straight than throw in another one....

Obviously Python is going to be around (and superior on a lot of levels to Ruby, IMHO, as I've blogged about on Angr y Ruby but there seems to be a lot more momentum (and active development) in JRuby than Jython. Also, the Ruby/Rails community seems to have done a better job of marketing the language and probably attracting Java developers.

Matt said...

It's true that there's a lot of progress and momentum behind JRuby. And that's great, but I don't see that Jython is irrelevant because of JRuby's success. It's not a zero-sum game.

I agree that 2.2 is now pretty historic Python; I was shocked to discover I had to use 1 and 0 rather than True and False, for example... Still, I think the release is more important as an indicator that the Jython project is active again, and it's quite probable that the next release will take much less than 5 years. If Jython can catch up with modern CPython, that's much more interesting.

Matt Franz said...


Fair enough, I'm probably letting my own experience of having "to pick a language and stick to it" (to keep my sanity among other reasons) influence my view of the problem space :(

- mdf