|
|
What is JPython?
JPython is an implementation of the high-level, dynamic,
object-oriented language Python
seamlessly integrated with the
Java platform and certified as
100% Pure Java.
JPython
is freely available for both commercial and non-commercial use and is
distributed with source code. JPython is complementary to Java and is
especially suited for the following tasks:
- Embedded scripting - Java programmers can add the
JPython libraries to their system to allow end users
to write simple or complicated scripts that add functionality
to the application. Since JPython is certified
100% Pure Java,
it can be added to an application without fear of compromising
its ability to run on all Java platforms.
- Interactive experimentation - JPython provides an
interactive interpreter that can be used to interact with Java
packages or with running Java applications. This allows
programmers to experiment and debug any Java system using
JPython.
- Rapid application development - Python
programs are typically 2-10X shorter than the equivalent Java
program. This translates directly to increased programmer
productivity. The seamless interaction between Python and Java
allows developers to freely mix the two languages both during
development and in shipping products.
There are numerous
alternative languages
implemented for the Java VM. The following features help to separate
JPython from the rest:
- Dynamic compilation to Java bytecodes - leads to
highest possible performance without sacrificing interactivity.
- Ability to extend existing Java classes in JPython -
allows effective use of abstract classes.
- Optional static compilation - allows creation of
applets, servlets, beans, ...
- 100% Pure Java Certification - provides assurance that
JPython won't compromise the portability of your application.
- 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.
|