
                   NEW FEATURES in version 0.9.6.

*   CHANGE: Now, unwrapping of object types is _not_ performed automatically on
    return. That is: if x is a java.lang.Integer object the expression
    "x" has type "java.lang.Integer" (i.e. Object), whereas "x+1" has 
    type "int".

    This change may result in higher performance for some applications. But
    may break the code relying on automatic unwrapping. 

    No changes of user programs are required if the type of the expression
    was fixed (through the third argument of Evaluator.compile(...)). In this
    case unwrapping is still performed when needed.

*   FEATURE: added a java.reflect.String interface, which can be used to
    designate classes automatically convertible to java.lang.String using
    their .toString() method. For example if "a" is of class impementing
    gnu.jel.String the expression 'a+"abc"' is interpreted as string
    concatenation, otherwise it's a syntax error.

*   FIX: Method overloading now works across the unwrappable types. 
    For example, if the Library contains two methods method(int) and
    method(gnu.jel.reflect.Integer) the overloading will be handled
    according to the usual rules. Previously, a call to such method(..)
    was wrongly considered ambiguous.

*   FEATURE: objects implementing gnu.jel.reflect.String can be passed
    to methods requiring java.lang.String parameters.
    

                   BUGS

*   JEL does not run under IBM JDK 1.1.8 on Linux with JIT on if it was
    compiled by JDK 1.1 compiler with -O flag. This is either problem of
    javac or IBM's JIT. Note that distributed version is compiled with
    jdk 1.2 compiler and works with IBM JDK 1.1.8 JIT.

*   In Microsoft JVM with JIT enabled "d2i" instruction was not implemented
    correctly. To see if this BUG is fixed in Your JVM run the JEL
    testsuite, if all tests pass You are safe.
    

                       PLANNED FEATURES

1. More examples to come.

Wed Jan 24 01:21:54 CET 2001 
           Konstantin Metlov.