Jython

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Jython
Jython Logo
Initial release January 17, 2001 (2001-01-17)[1]
Stable release 2.5.3 / August 13, 2012 (2012-08-13)
Preview release 2.7 Beta 3 /
August 22, 2014 (2014-08-22)
Written in Python and Java
Operating system Cross-platform
Platform Java Virtual Machine
Type Python Programming Language Interpreter
License Python Software Foundation License (for older releases see License terms)
Website www.jython.org

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

Overview[edit]

Jython programs can 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 could be written with Swing, AWT or SWT. Jython compiles to Java bytecode (intermediate language) either on demand or statically.

History[edit]

Jython was initially created in late 1997 to replace C with Java for performance-intensive code accessed by Python programs, moving to SourceForge in October 2000. The Python Software Foundation awarded a grant in January 2005, but development was slow due to lack of knowledgeable developers. Over this history, Jython had been developed successively by Jim Hugunin,[2] Barry Warsaw, Samuele Pedroni, Brian Zimmer, and Frank Wierzbicki.

In March 2008, Sun Microsystems announced the hiring of Ted Leung and Frank Wierzbicki to work on Jython and Python, similar to Sun's hiring of two JRuby developers.[3][4] Development progressed steadily,[5][6][6][7] and Jython 2.5 was released in June 2009.[8]

Status and roadmap[edit]

The current release is Jython 2.5.3, available since August 13, 2012.[9] While Jython 2.5.3 was entirely bug fixes, version 2.5.2 included new features, like IPv6 support in the socket module and performance enhancements, as well as its own bug fixes. Jython 2.5.2 implements the same set of language features as CPython 2.5[8] As of 2.5.0, Jython is able to run popular Python frameworks such as Django, Pylons, or SQLAlchemy.[10]

On Monday, March 5, 2012, it was announced that funding had been procured to produce a 2.7 version of Jython, with release targeted at July 2012.[11] A Beta release (2.7beta1) was made available on February 10, 2013, bringing compatibility with CPython 2.7.

Although Jython implements the Python language specification, it has some differences and incompatibilities with CPython, the reference implementation.[12][13]

License terms[edit]

From version 2.2 on, Jython (including the standard library) is released under the Python Software Foundation License (v2). Older versions are covered by the Jython 2.0, 2.1 license and the JPython 1.1.x Software License.[14]

The first two licenses are permissive free software licenses. Because neither the Free Software Foundation nor the Open Source Initiative have reviewed or commented on the third license, its status is unclear, although it is also likely to be a permissive free software license.

The command line interpreter is available under the Apache Software License.

Usage[edit]

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. It is used as the main programming language for the SCaViS scientific computing. The usage of Jython for scientific applications was discussed in the book "Scientific Data analysis using Jython Scripting and Java"[15] by S.Chekanov.

See also[edit]

References[edit]

  1. ^ http://hg.python.org/jython/file/tip/NEWS
  2. ^ Hugunin, Jim (March 2002). "Story of Jython". Retrieved 2009-06-05. 
  3. ^ Leung, Fred (2008-03-03). "The Sun is going to shine on Python". Retrieved 2008-03-03. 
  4. ^ Nutter, Charles (2008-01-03). "Jython's Back, Baby!". Retrieved 2008-02-09. 
  5. ^ Baker, Jim (2008-01-03). "Django on Jython: Minding the Gap". Retrieved 2008-02-17. 
  6. ^ a b Baker, Jim (2008-06-24). "Flipping the 2.5 Bit for Jython". Retrieved 2008-07-12. 
  7. ^ Wierzbicki, Frank (2008-07-15). "Jython 2.5 Alpha Released!". Retrieved 2008-07-16. 
  8. ^ a b Wierzbicki, Frank (2009-06-16). "Jython 2.5.0 Final is out!". Retrieved 2009-07-02. 
  9. ^ "Jython 2.5.3 Release Notes!". 2012-08-13. Retrieved 2012-10-10. 
  10. ^ "Jython 2.5 - Why you should upgrade". March 2002. Retrieved 2009-06-26. 
  11. ^ "Adconion to Fund Jython 2.7". March 2012. Retrieved 2012-04-23. 
  12. ^ "JythonFaq". Jython's project. Retrieved 2009-07-05. 
  13. ^ "Differences between CPython and Jython". Jython's project. Retrieved 2009-07-05. 
  14. ^ "The Jython License". Jython's project. Retrieved 2008-02-09. 
  15. ^ S.V.Chekanov, Scientific Data analysis using Jython Scripting and Java. Book. 497p. (Springer-Verlag, 2010, ISBN 978-1-84996-286-5)

External links[edit]