J/Link: The Java-Mathematica Connection
February 14, 2000--Wolfram Research announces the integration of Mathematica
and Java in the
preview release version of J/Link. J/Link is a Mathematica toolkit that
contains a Java-MathLink software developer's kit with extensive
documentation, utilities, and sample programs. According to Todd Gayley,
Director of Java Technology at Wolfram Research, "J/Link is a major advance
for Mathematica and Java. It expands the range and power of the Mathematica
environment by instantly encompassing all of Java. It also makes it easy to
write Java programs that use the services of Mathematica. In particular,
people who want to create web-based solutions involving Mathematica
now have an excellent tool."
With J/Link, Java programs can now access the vast array of
mathematical and
technical knowledge that is available in Mathematica. For example,
Mathematica can provide high-level numeric and symbolic solvers to applets,
servlets, and applications. These can also use the powerful tools in
Mathematica to generate and render graphical and mathematical
objects. For
instance, Mathematica provides world-class typesetting of mathematical
formulas, including full support for input, output, and rendering of MathML.
J/Link also enables Mathematica programs to act as a
scripting and wiring
language for Java, providing an interactive development environment. Users
can load Java classes, create objects, and call methods directly from
Mathematica. With this facility, all of Java is now directly available in
Mathematica to build sophisticated applications such as carrying out
statistical analysis of data read from a URL, building platform-independent
GUI applications, or manipulating XML data.
Mathematica--the leading software system for numerical, symbolic, and
graphical computation--lets users solve, visualize, and harness the power of
mathematics without the pencil-and-paper, calculator, or complex custom-software
approaches that were previously necessary. In Mathematica
absolutely every object is an expression, whether it is a formula, program,
graphic, or user-interface object. This uniform tree-based structure
supports a powerful programming language and also fits naturally with the
Java object model.
MathLink is a general interface for external programs to communicate with
Mathematica. It allows Mathematica expressions to be
transmitted--i.e., serialized--from one process to another, even if they are
running on different computers. Because Mathematica, MathLink, and Java are
all well-known platform-independent technologies, applications constructed
from these components allow the construction of sophisticated and completely
portable solutions involving computation done by single machines or groups
of programs over a network.
The core technology of J/Link makes use of the Java-reflection API, which
allows Java code to describe itself to some external agent, in this case
Mathematica. In this way Mathematica can dynamically and automatically
construct the correct interface to the capabilities of a Java package. There
is no need for any special template interface to be constructed, as is the
case for C or C++. Wolfram Research, Inc. is making this preview release of
J/Link available at no charge both to users and to developers who wish to
create applications involving Java and Mathematica.
The J/Link package may be downloaded from
http://www.wolfram.com/solutions/mathlink/jlink.
| |