[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Help-smalltalk] GNU Smalltalk 1.95.2 uploaded
From: |
Paolo Bonzini |
Subject: |
[Help-smalltalk] GNU Smalltalk 1.95.2 uploaded |
Date: |
Tue, 20 Feb 2001 15:06:18 +0100 (CET) |
I have uploaded gst 1.95.2, it will be put on ftp.gnu.org today or
tomorrow. Check out http://www.gnu.org/server/new-software.html for
more information.
Here are the news from 1.95.1 to 1.95.2
o A little more performance could derive from keeping the MethodDictionaries
no more than 75% full (actually this was done to fix a discrepancy between
the C-coded identityDictionaryFindKeyOrNil, which grew a full
dictionary, and the Smalltalk class, which assumed that dictionaries
are never full).
o An object must be explicitly marked as to be finalized *every time the
image is loaded*. That is, finalizability is not preserved by an
image save. This was done because in most cases finalization is
used together with CObjects that would be stale when the image is
loaded, causing a segmentation violation as soon as they were accessed
by the finalization method.
o Fixed bug when #at: and #at:put: were handled by a C call-out.
o Invalid C call-outs raise an error instead of simply writing to stdout.
o Works on Solaris and possibly other systems (thanks to Dirk Sodermann!
I would never have caught it!!!)
o A great part of the exception handling code has been rewritten. The
new algorithm scans backtraces for contexts marked as storing exception
handlers instead of storing the handlers' state in a Dictionary, which
is smarter, faster when no exceptions are raised, and less bug prone.
o BList (Blox's list box) used indices that were half 0-based, half
1-based. This caused an infinite loop if you double-clicked a BList;
for this reason they have been corrected to be 1-based everywhere
even if this is *backwards-incompatible*.
o IMPORTANT: the preferred method for mantaining geometry in Blox has
changed, as a provision for switching to other (less flexible in this
respect) toolkits like GTK+. The #...Offset: methods should *not*
be used anymore as they are now flagged implementation-dependant.
Instead, you should use the new #inset: method, or rely more heavily
on BContainers which now use the packer (in a backwards-compatible way).
Relying on widget outside of the client area is also deprecated because
GTK+ alignments do not allow this.
o In general, the performance and stability of Blox are now more acceptable.
o Sets support arithmetic; to avoid this to propagate into Dictionary,
a new comon superclass of Dictionary and Set (HashedCollection) has
been created.
o Enhanced and refactored socket library, including support for multiple
address families, UDP servers, out-of-band data and ICMP sockets.
o GDBM interface works again and has a nice Dictionary-like layer.
o LargeArray classes which obtain optimal memory consumption (at the
expense of O(log n) access).
80% SUnit tool for writing test suites (missing: a nicer user interface).
o The command-line interface supports readline's completion (for filenames,
globals, and method keywords)
o The Smalltalk-in-Smalltalk compiler has a few bugs yet to be fixed,
but the parser works fine and file-ins, so it does not break the
browser.
o The VisualWorks XML parser is now included. It will gradually replace
the InDelv parser (2.0 will include the InDelv parser, but its usage will
be deprecated). The reasons are that the VW parser is more modern (it is
validating and supports namespaces), it is more actively mantained, and
there is an open-source XSL processor that uses it.
0% The VisualWorks XSL processor is going to be included too.
o The web server has been refactored and a NetworkServer framework has
been extracted out of it.
o At last, there is a new module system using libtool to build modules
as shared dynamic libraries. The old home-grown support for
portable dlopening has also been superseded by libltdl. This scheme
is incompatible with the old one, but porting is very easy.
o The configuration file is not installed anymore
o The class reference has indices and cross-references
o Using libtool gives the benefit of versioning libgst. The current
version is 1:0:0 (there is no cfuncs.h file anymore, hence the
age of 0).
Paolo Bonzini
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Help-smalltalk] GNU Smalltalk 1.95.2 uploaded,
Paolo Bonzini <=