Jython

From Wikipedia, the free encyclopedia
Jython
Stable release 2.5.3 / August 13, 2012 (2012-08-13)
Preview release 2.7 Beta 1 /
February 10, 2013 (2013-02-10)
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

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

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,[1] 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.[2][3] Development progressed steadily,[4][5][5][6] and Jython 2.5 was released in June 2009.[7]

Status and roadmap

The current release is Jython 2.5.3, available since August 13, 2012.[8] 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[7] As of 2.5.0, Jython is able to run popular Python frameworks such as Django, Pylons, or SQLAlchemy.[9]

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.[10] 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.[11][12]

License terms

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.[13]

The first two are permissive free software licenses. The third also appears to be, but this is unclear because neither the Free Software Foundation nor the Open Source Initiative have reviewed and commented on it.

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

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. 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"[14] by S.Chekanov.

See also

  • WebLogic Server Application Server's wlst tool scripting using Jython
  • IBM WebSphere Application Server's wsadmin tool scripting using Jython
  • IronPython is an implementation of Python for .NET and Mono, originally created by Jython's creator, Jim Hugunin.
  • PyPy a self-hosting interpreter for the Python programming language.
  • ZK is a Java Ajax framework that allows glue logic written in Jython.
  • TheGrinder a Java load testing framework similar to Jmeter.
  • Sikuli a tool that uses image recognition to identify and control GUI components written in Jython

References

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

External links

This article is issued from Wikipedia. The text is available under the Creative Commons Attribution/Share Alike; additional terms may apply for the media files.