Jython

Java implementation of Python

Jython
Jython Logo
Initial releaseJanuary 17, 2001; 23 years ago (2001-01-17)[1]
Stable release
2.7.3[2] Edit this on Wikidata / 10 September 2022; 18 months ago (10 September 2022)
Repository
  • github.com/jython/jython/ Edit this at Wikidata
Written inPython and Java
Operating systemCross-platform
PlatformJava virtual machine
TypePython Interpreter
LicensePython Software Foundation License (for older releases see License terms)
Websitewww.jython.org Edit this at Wikidata

Jython is an implementation of the Python programming language designed to run on the Java platform. It was known as JPython until 1999.[3]

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 Python source code to Java bytecode (an 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. Jython 2.5 was released in June 2009.[4]

Status and roadmap

The most recent release is Jython 2.7.3. It was released on September 10, 2022 and is compatible with Python 2.7.[5]

Python 3 compatible changes are planned in Jython 3 Roadmap.[6]

Although Jython implements the Python language specification, it has some differences and incompatibilities with CPython, which is the reference implementation of Python.[7][8]

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

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

Usage

  • JBoss Application Server's command line interface scripting using Jython
  • Oracle Weblogic Server Scripting Tool uses Jython
  • IBM Rational development tools allow Jython scripting
  • IBM WebSphere Application Server tool scripting with wsadmin allows using Jython and Jacl
  • ZK – a Java Ajax framework that allows glue logic written in Jython
  • Ignition - A software development platform focused on HMI and SCADA[10]
  • Ghidra - a reverse engineering tool developed by the NSA allows plugins to be written in Java or Jython
  • openHAB - home automation software

See also

  • iconComputer programming portal
  • Free and open-source software portal
  • List of JVM languages
  • IronPython – an implementation of Python for .NET and Mono
  • PyPy – a self-hosting interpreter for the Python programming language.
  • JRuby – similar project for the Ruby programming language.
  • GraalVM - a polyglot runtime written in Java, has a Python 3 implementation

References

  1. ^ Wierzbicki, Frank (March 22, 2015). "jython: 3d8067c56a1d NEWS". Retrieved March 28, 2015.
  2. ^ "Release v2.7.3".
  3. ^ "JythonFaq/GeneralInfo - JythonWiki". April 3, 2014. Retrieved March 28, 2015.
  4. ^ Wierzbicki, Frank (June 16, 2009). "Jython 2.5.0 Final is out!". Retrieved July 2, 2009.
  5. ^ "News". Jython. Retrieved April 19, 2020.
  6. ^ "Jython 3 Roadmap". Jython. Retrieved October 14, 2022.
  7. ^ "JythonFaq". Jython's project. Retrieved July 5, 2009.
  8. ^ "Differences between CPython and Jython". Jython's project. Retrieved July 5, 2009.
  9. ^ "The Jython License". Jython's project. Archived from the original on October 9, 2018. Retrieved February 9, 2008.
  10. ^ "Introducing Ignition - Ignition User Manual 7.9 - Ignition Documentation". docs.inductiveautomation.com. Retrieved April 24, 2019.

External links

  • Official website Edit this at Wikidata
  • v
  • t
  • e
Java (software platform)
Platforms
Oracle technologies
Platform technologies
Major third-party technologies
History
JVM languages
Community
Conferences
Organizations
People
Category   icon Computer programming portal
Authority control databases: National Edit this at Wikidata
  • Israel
  • United States
  • Czech Republic