Jython is great. Another big advantage of it is that Jython classes compile to ordinary Java class files, so you can subclass Java classes with Jython classes and conversely. Also, Jython has (a limited form of) lambda expressions and other very useful language features.

We considered using Jython for the read-eval-print-loop in DrJava, but ultimately we decided to use DynamicJava instead. The only reason we decided not to use Jython was because the differences in syntax would prevent students from lifting into their Java programs expressions and statements typed interactively. That's too bad, because in many ways, Jython syntax is cleaner. For instance, simple lambda expressions can be added to GUI elements as action listeners (it's very convenient).