Jython, lest you do not know of it, is the most compelling weapon the Java platform has for its survival into the 21st century - SeanMcGrath
Why Jython
There are numerous alternative languages implemented for the Java VM. The following features help to separate Jython from the rest:
Dynamic compilation to Java bytecodes - leads to highest possible performance without sacrificing interactivity.
Ability to extend existing Java classes in Jython - allows effective use of abstract classes.
Optional static compilation - allows creation of applets, servlets, beans, ...
Bean Properties - make use of Java packages much easier.
Python Language - combines remarkable power with very clear syntax. It also supports a full object-oriented programming model which makes it a natural fit for Java's OO design.
What Does Jython Do Well?
Prototyping
Java investigation
>>> from java.util import Date
>>> d = Date()
>>> print d
Sat Jan 08 16:26:16 CST 2005
>>> from java.util import Random
>>> print dir(Random)
['__init__', 'nextBoolean', 'nextBytes', 'nextDouble', 'nextFloat',
'nextGaussian', 'nextInt', 'nextLong', 'seed', 'setSeed']
>>>
Making bean properties accessible
>>> print Date().time
1105500911121
Glues together libraries already written in Java
Excellent embedded scripting language
Object Domain UML Tool
PushToTest
Drools
Differences - Python & Jython
Read more: Jython: Python for the Java Platform
Why Jython
There are numerous alternative languages implemented for the Java VM. The following features help to separate Jython from the rest:
Dynamic compilation to Java bytecodes - leads to highest possible performance without sacrificing interactivity.
Ability to extend existing Java classes in Jython - allows effective use of abstract classes.
Optional static compilation - allows creation of applets, servlets, beans, ...
Bean Properties - make use of Java packages much easier.
Python Language - combines remarkable power with very clear syntax. It also supports a full object-oriented programming model which makes it a natural fit for Java's OO design.
What Does Jython Do Well?
Prototyping
Java investigation
>>> from java.util import Date
>>> d = Date()
>>> print d
Sat Jan 08 16:26:16 CST 2005
>>> from java.util import Random
>>> print dir(Random)
['__init__', 'nextBoolean', 'nextBytes', 'nextDouble', 'nextFloat',
'nextGaussian', 'nextInt', 'nextLong', 'seed', 'setSeed']
>>>
Making bean properties accessible
>>> print Date().time
1105500911121
Glues together libraries already written in Java
Excellent embedded scripting language
Object Domain UML Tool
PushToTest
Drools
Differences - Python & Jython
Read more: Jython: Python for the Java Platform