Tuesday, October 7, 2008

JPHTHON

Jython, successor of JPython, is an implementation of the Python programming language written in java.

Overview

Jython programs can seamlessly import and use any Java class. Except for some standard modules, Jython programs use Java classes instead of Python modules. Jython includes almost all of the modules in the standard Python programming language distribution, lacking only some of the modules implemented originally in C. For example, a user interface in Jython would be written with Swing, AWT or SWT. Jython compiles to Java bytecode (intermediate language) either on demand or statically.

Jython also includes jythonc, a compiler that converts Python source code into Java bytecode. This allows Python programmers to write classes which can be fully utilized by a Java program.


License terms
Jython is released under a mix of three licenses: the Python Software Foundation License (v2), the Jython 2.0, 2.1 license, and the JPython 1.1.x Software License. The first two are permissive free software licenses. The third also appears to be but this is unclear because neither Free Software Foundation or Open Source Initiative have reviewed and commented on it.


History
Jim Hugunin created Jython in late 1997, and developed it until 1999. In February 1999, Barry Warsaw took over as the primary developer. In October 2000, Jython moved to SourceForge. For a long time, Samuele Pedroni did most of the work to maintain and develop Jython. To the end of 2004, Pedroni stepped down as the primary developer to concentrate his effort to PyPy, but he is still considered the authority on Jython internals. In January 2005, Brian Zimmer received a grant from the Python Software Foundation to develop Jython. In December 2005, Frank Wierzbicki succeeded Zimmer as the primary developer. During 2005, development was slow due to lack of knowledgeable developers.

On March 3, 2008, it was announced that Sun Microsystems hired Ted Leung and Frank Wierzbicki to work on Jython and Python, similar to Sun's hiring of two JRuby developers. Development progresses steadily, and Jython can now even run Django, a Python framework comparable to Ruby on Rails.


Status and roadmap
The current release is Jython-2.2.1. It includes improvements to Java integration and implements the same set of language features as CPython 2.2. CPython 2.5 is targeted for the next release.

Developments are going steady and an alpha version of the corresponding Jython 2.5 release has been available since July 2008.


Usage
Jython is one of two scripting languages (with Jacl) used in WebSphere Application Server. It is used in IBM Rational development tools, where Jython projects can be created using wizards.