	                   Netica-J for Linux
	                   ==================
			     Version:  2.21 
		      Release Date:  May 16, 2002

After unzipping this zip archive, please open the Netica-J manual in:
       \docs\NeticaJ_Man.pdf
and read the installation instructions it contains.
If you do not have a PDF reader, you can download one free
from:   http://www.adobe.com/products/acrobat/readstep.html


Changes since the last official release (2.20):
==============================================

- Sensitivity.getMutualInfo() and Sensitivity.getVarianceOfReal() 
  were both fixed.  They had been outputting 1.0 exclusively.

- Minor changes to the javadocs and user's manual.


Changes since the last official release (2.12):
==============================================

- Doc class replaced with Generic class, which Node, Net, and State now extend.
  Thus instead of saying: node.doc().getName();
           you would say: node.getName();

- UserData and UserFields are now managed by their own class, User, which
  is placed in the Generic class.
  Thus instead of saying: node.setUserField("field1","Value of field1");
           you would say: node.user().setString("field1","Value of field1");

- UserField management has been greatly enhanced.
  Many new methods have been provided (in class User) to control the format
  in which UserFields are written to file.  This will allow the .dne files
  you create to be more easily read by non-Java users of Netica.

- NodeVisual class has been renamed to VisualNode.  This is to prepare for
  the coming of several new VisualX classes in future releases of Netica-J.

- User-defined error numbers are now permitted to range from 1 to 999,
  inclusive, instead of 20000 to 29999, inclusive.

- Netica.getWarnings() now clears all warnings, not just the ones
  you are interested in.  This is because you do not want the
  uninteresting ones to be gathering, consuming resources, if you
  are not interested in them anyhow.

- The constant NAME_MAX has been moved from the Environ class to the
  Generic class where it makes sense to be, since NAME_MAX only
  concerns the length of names managed by the Generic class.

- Numerous methods have been renamed for improved conceptual clarity.
  The old methods are deprecated.

- The "Ex" classes are now in their own package:  norsys.neticaEx 

- A subpackage of norsys.neticaEx, norsys.neticaEx.aliases, will
  conveniently allow you to alias the "Ex" classes and still be
  able to use the names "Net", "Node", and "NodeList".

- Numerous improvements to the javadocs.  For example, many new
  programming examples have been added.

- Net.getFileName() now returns null and not "", if the Net has
  not been associated with a file.


Note on the above changes.
-------------------------
Almost all of the old 2.12 methods and ways of doing things will
still work.  They are just deprecated, and so you will get compiler
warnings if you specify the "-deprecation" parameter to the java compiler
(e.g., javac.exe -deprecation ...).]  We encourage you to eventually
modify your code to the new 2.20 way, since deprecated methods will
eventually be dropped.

The above changes were not made lightly.  We at Norsys are very careful
to have a very good reason for making any change to the public interfaces
of our software.  We apologize for the short-term effort any of the above
changes may cause you.  We trust the long-term benefits will more than
justify these.  We plan to have one more release in about a month with
significant changes, but after that future releases will consist almost
entirely of additions and we will be very resistant to making changes
to the core API.
