This release is the reference implementation for NetRexx 1.1xx, and requires
Java 1.1 to run. NetRexx 1.1xx releases are a superset of NetRexx 1.00, as published
in The NetRexx Language. New features in NetRexx 1.1xx
are documented in the NetRexx
Supplement.
Updates:
|
|
1.140
[26 May 1998]
|
-
Three enhancements have been made to tracing:
-
The new var option on trace lets changes to named
variables be traced selectively. For example:
trace var a b c
requests that whenever the variables a, b, or c are changed (either
directly or using an index), the line changing them and their
new values should be traced. Variables may be added to or removed
from the list as required.
-
The trace instruction may now be used before the first
class instruction; it then applies to all classes in
a program.
-
Context is now shown while tracing -- if a trace line is produced
from a different program or thread than the preceding trace
line, then an indicator line (prefixed with ---) is
displayed. See the NetRexx
Supplement for details.
-
The numeric instruction may now be used before the first class
instruction; it then applies to all classes in a program.
-
The new -savelog NetRexxC option requests that compiler messages
be written to the file NetRexxC.log in the current directory. The
messages are also displayed on the console, unless -noconsole
is specified.
-
The new -noconsole NetRexxC option requests that compiler
messages not be written to the console.
-
When calling the compiler directly from NetRexx or Java, a PrintWriter
can now be provided; messages are then written to that stream (see
the User's Guide for details).
-
A catch clause may now specify an exception that is a subclass
of an exception signalled in the body of its construct.
-
The leave and iterate instructions may now be used
in the catch and finally clauses of nested loops.
-
Many improvements to the formatting of generated Java code have been
made (plain-name labels, fewer braces, better comments handling,
etc.).
-
A constant indirect property may now be changed by methods
in its class, though no set method for it is generated or
permitted.
-
Several performance improvements and optimizations have been added,
improving both run time and compilation time. If you have a long
CLASSPATH or many files in directories, you may see a 20% or better
reduction in compile time.
-
The NetRexxC.cmd and .bat files now add the value of the NETREXX_JAVA
environment variable to the options passed to java.exe. For example,
SET NETREXX_JAVA=-mx24M changes the maximum Java heap size
to 24 MegaBytes. Try this if you see a java.lang.OutOfMemoryError
while running the compiler.
-
Several related problems with loading minor classes from directories
and zip files have been corrected.
-
Parentheses around sub-expressions were incorrectly optimized out
in some situations; they are now preserved.
-
A work-around for a problem caused by empty directories on the CLASSPATH
in Linux has been added.
|
1.132
[15 Apr 1998]
|
-
This version includes one major enhancement: support for Minor
and Dependent classes - Java's Nested and Member (inner) classes,
using simplified syntax and concepts.
|
1.130
[8 Mar 1998]
|
-
The new copyIndexed method on the
Rexx
class allows the sub-values (indexed strings) of one Rexx object
to be merged into the sub-value collection of another Rexx object
[available in runtime since NetRexx 1.120].
-
The '$' character is now permitted in variable and other names.
-
It is now an error to attempt to use a concatenate operator on an
array (unless the array is of type
char[]
).
-
The methods generated for indirect properties are no longer inhibited
by methods of the same name in superclasses.
-
The NetRexx
Supplement has been updated to document changes since August
1997.
|
1.128
[14 Feb 1998]
|
-
The new linecomment example is a small command-line application
that processes a text file. It demonstrates the use of Readers and
Writers, and exception handling.
-
A workaround for a bug in javac in JDK1.2b2 has been included.
-
Retry of a failing do instruction as a loop instruction
now works.
-
'\1a' (EOF) characters no longer need to follow line-end sequences
in order to be ignored.
-
Import of package hierarchies from .zip or .jar files now works correctly
(previously it only worked for the standard imports).
|
1.125
[10 Jan 1998]
|
-
The new sourcedir option requests that all
.class
files be placed in the same directory as the source file from
which they are compiled. Other output files are already placed in
that directory. Note that using this option will prevent -run
from working unless the source directory is the current directory.
-
The new explicit option indicates that all local variables
must be explicitly declared (by assigning them a type but no value)
before assigning any value to them.
-
Indexed strings are now serializable (can be made persistent).
-
Minor improvements to generated code.
|
1.122
[27 Nov 1997]
|
-
A workaround for a JIT bug in Java 1.1.4 (showing as an exception
in an optioncheck method during compilation) has been included.
-
Formatting for the Java code when the comments option is used
has been improved.
-
strictcase and nostrictcase programs can now be safely
mixed in a single compilation.
-
Minor improvements to generated code and performance.
|
1.121
[21 Oct 1997]
|
-
The new experimental comments option copies comments from
the NetRexx source program through to the .java output file, which
may be saved using the keep command option.
-
Decimal addition has been updated to conform to ANSI X3-274 arithmetic
and the NetRexx documentation (this is a very minor change: an addition
such as 77+1E-999 now pads with zeros).
-
An abstract method in an abstract class was incorrectly reported
as error.
-
Minor improvements to error messages, formatting, and performance.
|
1.120
[1 Sep 1997]
|
-
Minor improvements to error messages, signals handling, and performance.
-
Redesigned web pages and improved documentation.
|
1.113
[3 Aug 1997]
|
-
Multiple .java files are compiled using a single call to javac, giving
improved performance and interdependency resolution.
-
Individual methods may be designated as binary, using the binary
keyword.
-
Numerous 'cosmetic' improvements in error messages, formatting, etc.
|
1.104
[22 Jul 1997]
|
-
Whole numbers may now be expressed in a hexadecimal or binary notation,
for example: 0xbeef 2x81 8b10101010 - see the Supplement
for details.
-
Conversions from String to Rexx (etc.) now
'pass through' nulls, rather than raising NullPointerException.
-
options symbols may be used to include debugging information
(a symbol table) in the generated .class files.
-
Numerous 'cosmetic' improvements in error messages, formatting, etc.
|
1.103
[3 Jul 1997]
|
-
A new modifier, adapter, for classes has been introduced.
This makes it easy to use Java 1.1 events, without the complexity
and extra nesting of Java Inner Classes. Please see the Supplement
for details, and the new Scribble sample
for a simple example.
-
Compressed Zip files as produced by the Java 1.1 jar utility
('jar files') can now be used for class file collections. The current
NetRexxC.zip file is such a file.
-
The NetRexx string class, netrexx.lang.Rexx, is now serializable.
-
The compiler now uses the Java 1.1 Writer and Reader classes for
reading and writing text files; this means that the text code page
in use on your machine will be automatically translated to and from
Unicode for use by the compiler.
-
Associated with the previous change, options utf8 must now
be consistent with the options passed to the compiler (see the Supplement
for details).
-
The NetRexxC.properties (error messages) file is now included
as a resource in the NetRexxC.zip file. The copy in the \lib directory
is no longer needed, nor is the NETREXX_HOME environment variable
(if you needed to use that before).
-
The Pinger and Spectrum sample applications have been updated to
use the Java 1.1 event model; Pinger has also had some other minor
improvements.
-
Performance improvements reduce start-up time when compiling with
a long CLASSPATH or with class directories with large numbers of
files.
|
Updates:
|
|
1.02
[25 Jun 1997]
|
-
You can now add the shared keyword to the method or
properties instructions to indicate that the method or a following
property has shared access (that is, is accessible to other
classes in the same package, but not to other classes). This corresponds
to the Java 1.1 'default access' visibility. Please see the NetRexx
Supplement for details.
-
The new sourceline special name may be used to return the
line number of the current clause in the program. Please see the
NetRexx Supplement
for details.
-
Array initializers have ben added. These allow arrays to be created
and assigned an initial value, for example: x=['one','two','three']
Note that Java 1.1 is needed to use this enhancement. Please see
the NetRexx
Supplement for details.
-
The property and method access rules have been enforced according
to the current Java specification, along with enhanced error messages
when the rules are infringed.
|
1.01
[15 Jun 1997]
|
|
1.00
[24 May 1997]
|
-
Cosmetic changes:
-
Methods listed during compilation now have their argument types
listed (if any)
-
Methods generated from Indirect Properties are now listed.
-
The installation instructions now include
instructions for using NetRexx with Visual J++.
-
A reference to java.awt.image.ImageObserver treated java.awt.image
as a class reference rather than as a package name; it will now correctly
refer to the ImageObserver class.
|
[6 May 1997]
|
|
[15 Apr 1997]
|
-
Preliminary, experimental, support for JavaBeans is now available
in the NetRexxC compiler. It is described in the NetRexx
Supplement.
-
Checking has been added for the use of Java reserved words as externally
visible names (such properties, method, and class names cannot be
accessed by people writing in the Java language).
-
The translator phase of the compiler has numerous performance improvements,
and now runs 35% faster than the first (January) 1.00 release.
-
Forward references from property initialization expressions to methods
in the current class are now permitted, providing they are not circular.
-
Several improvements have been made to error and progress messages.
|
[13 Mar 1997]
|
-
The source and documentation for the Tablet (navigation tabs) applet
have been added to the package.
-
Forward references involving default constructors now work correctly.
-
The .equals method was not being used for '=' and '\=' comparisons
of subclassed objects.
-
options nodecimal may be used to report the use of decimal
arithmetic as an error, for performance-critical applications.
|
[18 Feb 1997]
|
-
Minor improvements to the compiler for error messages, localization,
and Java 1.1.
-
The Say instruction can now handle all expressions that evaluate
to null.
|
[6 Feb 1997]
|
-
LOOP OVER did not correctly snapshot indexed strings with 'hidden'
elements.
-
Some unused method arguments were not being reported as unused.
-
Minor improvements to error messages, progress messages, and code
generation.
|
[3 Jan 1997]
|
-
Minor cosmetic and performance improvements over 0.90.
-
NetRexxC.bat and nrc.bat have been added to the NetRexx package.
|