Current restrictions
The NetRexx processor is now functionally complete, though work
continues on usability and performance improvements. As of this version
there are still a number of restrictions, listed below.
Please note that the presence of an item in this section is not a
commitment to remove a restriction in some future update; NetRexx
enhancements are dependent on on-going research, your feedback, and
available resources. You should treat this list as a 'wish-list' (and
please send in your wishes).
Short-term restrictions
The following problem may occur in larger methods, with Java 1.0.1,
1.0.2, or 1.1.1 (it may have been fixed in later versions):
-
NetRexxC does not restrict the number of local variables used or
generated. However, the 1.0 javac compiler fails with unrelated
error messages (such as 'statement unreachable' or 'variable may be
uninitialized') if asked to handle more than 63 local variables.
Long term restrictions
The following restrictions are due to the use of a translator, and would
probably only be lifted if a direct-to-bytecodes NetRexx compiler were
built.
-
Externally-visible names (property, method, and class names) cannot
be Java reserved words (you probably want to avoid these anyway).
-
There are various restrictions on naming and the contents of
programs (the first class name must match the program name, etc.).
-
The javac compiler requires that mutually-dependent source files be
on the CLASSPATH, so javac can find the source files. NetRexxC does
not have this restriction, but when using javac for the final
compilation you will need to follow the convention described under
'Compiling multiple programs', above.
-
The 'symbols' option applies to all programs compiled together if
any of them specify that option.
-
Some binary floating point underflows may be treated as zero instead
of being trapped as errors.
-
Side-effects of calls to this() and super() in constructors may be
seen before the method and method call instructions are traced --
this is because Java does not permit tracing instructions to be
added before the call to this() or super().
-
The results of expressions consisting of the single term 'null' are
not traced.
[ previous section | contents]
From 'nrinst.doc', version 1.122.
Copyright(c) IBM Corporation, 1996, 1997. All rights reserved. ©