kimr@eiffel.UUCP (Kim Rochat) (10/31/90)
As promised by Dr. Meyer, here is the summary of changes made to Interactive Software Engineering's implementation of Eiffel between release 2.2B and the current release 2.3 level 4. WHAT'S NEW IN EIFFEL 2.3 Level 4 (October 1990) 1 Compiler + Improved support for repeated inheritance. + The @ operator may be used with arguments, locals, basic attributes, Create, and external routines. + Improved integration of class and basic types. 2 Run-time system + Run-time library overhead has been reduced, particularly for assertion checking, cloning, and garbage collection. 3 Libraries 3.1 Kernel + New features added to ANY: object_id returning the object's location in memory and generator returning the type of which the object is a direct instance. + Classes INT, BOOL, CHAR, REAL are now fully implemented, in case their features are used through inheritance in descendant classes. + New features have been added to FILE to deal with directory entries. 3.2 Data structures + Efficiency of tree and list classes has been improved. 3.3 Winpack + Efficiency improvements: redisplay is up to three times faster with deeply nested windowing structures. + DEVICE and WINDOW have been changed to recognize window resizing. 3.4 Graphics All graphical tools and libraries have been tested under both X11 Release 4 and X11 Release 3. + Efficiency has been improved. + Scrollbars, color support, cursors, and client message events have been added. 3.5 Iterators + New cluster iterations has classes which allow iteration over lists and trees. 3.6 Support + E_CLASS and UNIVERSE are enhanced to support new eb functionality. 3.7 Beta-test classes + New beta-test classes (which are subject to change): CURSOR_TREE: an abstract class representing the general notion of tree with cursor. COMPACT_TREE: a compact implementation of CURSOR_TREE using two attributes to represent a tree node. 4 Tools 4.1 Flat + Several enhancements and new options. 4.2 Eb + Completely revamped: allows exploration and modification of universe during session, class editing, system compilation, and execution of Eiffel programs. On-line help is available. 4.3 Good + Scrollbars and color added, font names can be parameterized. + Information on classes and features appears in separate windows. + Source code is provided. 4.4 Es/Ec + The SDF file may contain Unix environment variables (such as $EIFFEL). 4.5 Post-processor + Handles multiple visible classes. 5 Examples + The graphics animation example has been extended to demonstrate the use of client events. + Color and cursor facilities have been added to the graphics pictures example. + Examples have been added illustrating the use of iterators and cursor trees. + README files are provided for each example to explain its purpose and usage. 6 Eiffel Shelf This archive file contains unsupported contributions. Unsupported contributions (provided as is and not supported by ISE) are: + Winpack extensions. + RDBMS Oracle interface. + Networking package. + Motif encapsulation. + Sed script to prettyprint Eiffel source file with troff macros. 7 Bug fixes between 2.2B and 2.3 Level 4 In addition to the functional improvements listed above, hundreds of bug fixes and minor enhancements have been made. Lists of major fixed bugs and remaining known defects are supplied with Eiffel 2.3 Level 4.