 |
Free EcmaScript Interpreter.
A JavaScript interpreter written
in Java. |
The version 0.5 adds:
-
AWT event handling. It is therefore possible to build
and experiment with user interface with FESI.
The version 0.6 adds:
-
A general event handling capability.
-
Loading Java classes from a dynamically specified directory or jar file
and dynamic loading of beans (including applets and gif images).
-
Various examples of loading beans and event handling.
-
The new command describe.
The version 0.7 adds:
-
Support for bean properties as EcmaScript properties.
-
A load routine (as part of BasicIO).
-
Speed enhancement (especially for java access).
-
Corrected various bugs.
The version 0.8 adds:
-
Support for bean properties as EcmaScript properties even for objects
not declared as bean.
-
Possibility to give an EcmaScript Array as a parameter for indexed properties
or when a native Java array is required.
-
Many enhancements in the jslib, including a way to create EcmaScript
objects and arrays, to declare objects as beans and to build functions
looking as EcmaScript functions, to get original exception hidden behing
JSException. See the FesiPop example too.
-
Command @clear added, and commands can be specified by any
unique prefix.
There was some confusion with the numbering of 0.8 and 0.9. From 0.9
the patch levels are between parentheses, as in 0.9(2).
Release 0.9 alpha adds:
(Now works with the "jit", which double the performance
(good, but a far cry from the marketing hype!)
-
(1): Possibility to catch the original error when a JSException was
generated.
-
(2): Corrected bug with enumeration of non string returning java objects.
-
(3): Corrected bug with indexed access to the arguments special variable,
getOriginalException, typeof undefined, added command @pwd, the
Database access mechanism.
-
(4): Completion of the database interface, addition of evalAsFunction,
and some explanation of the option -T in the interpreter.
-
(5): Minor internal enhancements to the database interface, regular
expression and the tryEval capability. FesiFTP
example added.
-
(6): Better support for with(javaObject), enhanced FesiFTP example,
new File().readAll convenience function, small internal code enhancements.
Beware: getLastError in the database extension has been changed to return
null (instead of undefined) if there is no error.
-
(7): Bug corrections: Close the loaded file or stream in all cases (even
in case of error), indicate that that the ProgrammingError exception is
caused by FESI internal errors. Enhancements in @describe and @listall
commands. Accept empty statements in more places (especially function(){}).
Added xml parser example using the ibm
xml4j package. Added function makeObjectWrapper(object) to JSGlobalObject,
allowing to use any object as an JSObject (for example with the eval function,
making the object the "this" of the evaluation sequence). Added support
for evaluating any string as if it was a function with parameters. Added
support for Swing in the interpreter (-s) and as an alternate extension
(BasicIOs).
-
(8): Corrected a bug in calling some interface class objects. Corrected
a buh in the Swing console mode. Added throwError.
-
(9): Display value for FIELD and PROPS in @describe.
@load
and load() now look in FESI.path or (if not present) in the classpath
to find the module. This can include jar and zip files. A command @path
display the load path in use. Updated the installation notes.
Beta 1 - Some errors in java access of interface routines corrected.
FesiForm example added.
Beta 2 - Bug in recursive call of the interpreter corrected.
A simple editing environment has been added to the Swing version
Beta 3 - Package was renamed Packages for compatibility with Netscape.
The Swing development environment was enhanced.
Beta 4 - Added SetFullYear, corrected bug in new Date() function.
Corrected bug in continue used in for and while loops.
1.0 - October 17, 1998 - A small correction in for loop handling.
Added ORO libraries to binary distribution.
1.0.1 - not released to the general public
Use FESI_HOME in batch files (from Matt Humphrey).
Corrected bug on Date(date) constructor (from
Hannes Wallnoefer).
getWelcomeText made public on evaluator.
1.0.2 - January 16, 1999
tryEval now return the evaluated value (rather
than the first
parameter), as is documented and useful (from
Kurt Westerfeld).
Added getVersion and getWelcomeText to the JSUtil
package.
Corrected bug in @listAll of java arrays (from
Kurt Westerfeld.
MathObject initialization moved around to help
JBuilder users.
Corrected bug in EcmaScriptException printing
(from Kurt Westerfeld).
Routine doWork in Interpreter made public (to
ease embedding the
interpreter in user code).
Enhancement in routine lookup in inside class
of interfaces (based
on an idea of Rich Kadel)
1.1 - March 7, 1999
WARNING: Use Swing 1.1 (javax.swing) in the swinggui
if used with JDK1.1.7 !
A new option -e allows to load extensions from
the command line.
The Interpreter structure has well as the gui
classes have been changed to
ease subclassing and allow compilation without
the Swinf and ORO classes.
Validated under Java 1.2, includes Java 1.2 compatible
ORO classes.
Added access to CORBA style properties (rotuines
without set/get prefix)
From Kurt Westerfeld:
Fix around Console to support the MS environment
Bug correction in ESObject, avoiding an endless
loop if an object which
does not have a valid default string value is
converted to string.
Added getMetaData() to connection and rowset
in the Database extension.
1.1.1 - March 15, 1999
Cleaned up web documentation
Checked on Linux (the AWT GUI doubles all characters...
sorry)
Very minor cleanup of code
Return to the main page
Last update: 15 March 1999