Track the changes in the next release in the TOM CVS check-in log
Changes in snapshots
(Sat Apr 14 2001) |
- Many bug fixes
- New features:
-
- Support Blocks as Enumerators.
- Runtime stack traces.
- Recyclable objects.
- Initial support of reflection.
- Improved Block support and usage.
- Random number generation.
Changes in version
1.1.1 (Fri Oct 15 1999) |
- Fixed three significant problems:
-
- a problem with an assembler-syntax change on i386-linux.
- shared library versions of tom, too, and C now follow trt.
- garbage collection of Blocks.
Changes in version 1.1
(Sat Oct 2 1999) |
- New targets
- i386-unknown-freebsd3*
- m68k-unknown-linux*
- New features
- Added support to the runtime library, for blocks as implemented by
Tesla, the new TOM compiler. Note that tomc, the old TOM compiler, has
not been updated to also handle blocks.
- Added -fno-conditions to tomc, to aid in porting.
- Added to the garbage collector the possibility to notify objects of
being referenced from the stack.
- Other changes
- Shared library version of libtrt increased to version 2, without
backwards compatibility.
- TOM is now part of Debian, so the Debian setup was changed and
removed from the TOM source distribution proper.
- Implemented the `:extend' option.
- Small bug fixes, some SPARC specific.
Changes in version 1.0
(Sun Jun 6 1999) |
- Small mods, i.e., long stability, i.e., version 1.
Changes in
version 0.99.3 (Thu Oct 8 1998) |
- The syntax of selectors has been sanitized, as described the new
selector syntax.
- flawless operation on FPU intensive tasks on i386 boxes, thanks to
Matt Kimball. The patch actually works around a bug in GNU CC's
__builtin_apply and __builtin_return (at least a bug when used in
the way the TOM runtime library is using them, where the return
type of the function invoked is not known at compile time).
- easier configuration on some configurations.
Changes in
version 0.99.2 (Tue Jul 14 1998) |
- New targets:
- i386-apple-rhapsody5
- ppc-apple-rhapsody5
- mips-sgi-irix[56] (O32 ABI)
- alpha-unknown-linux-gnu
- Other changes:
- Unarchiving from a TextStreamDecoder has been implemented. This
employs a new class: XL, which is a simple lexer that can also be
used for other things than just text stream decoding.
- Many fixes great and small.
Changes in
version 0.99.1 (Mon Apr 6 1998) |
- New features:
- Shared libraries are supported.
- Other changes:
- The TOM makefiles are now part of the main TOM package. They have
been cleaned up and support the creation of shared libraries.
- The parser generator and skeleton unit have been removed from the main
TOM package; they now reside in a package of their own.
- Similarly, the TOM Language Reference Manual has been put in a package
of its own.
- numerous bug fixes and feature enhancements.
Changes in
version 0.91 (Sun Aug 3 1997) |
- New targets:
- ppc-unknown-linux (Linux PowerPC)
- New features:
- The runtime library understands units and qualified classnames (new
class: Unit).
- The CharEncoding and fallback USASCIIEncoding now share a common
behavioural super (new class: CharacterEncoding).
- Other changes:
- improved hashtable performance while simplyfying the hash methods, by
applying the golden ratio fraction multiplicative hashvalue
generator to the values returned by the hash methods.
- fixed an important bug concerning the garbage collection of objects
employing pointer-typed variables; if they do nothing (the common
case for user-written classes) their object-referencing variables
are still scrutinized.
- numerous bug fixes and feature enhancements.
Changes in
version 0.03 (Fri Mar 21 1997) |
- New targets:
- hppa1.1-hp-hpux10.20
- i386-next-nextstep3
- i386-next-nextstep4 (untested)
- Language changes:
- thread-local static class variables (new qualifier: `local'),
- methods can have preconditions and postconditions. Conditions are
inherited by overriding methods. Code for condition checking is
compiled in by default; it can be omitted by `-fno-pre-checks' and
`-fno-post-checks'. Condition checking at run time is off by
default; it can be enabled by `:cc-pre' and `:cc-post',
- unary operator, `old', for use in postconditions,
- literal C code can be included between
<c> and
</c> tags,
- the semicolon is now a terminator instead of a separator, making TOM
code look more like C code (and C-x C-t useful again).
- New features:
- multi threading on some targets (classes: tom.Thread, tom.Lock,
tom.RecursiveLock, and tom.Semaphore),
- copying and mutable copying of objects (new class: Copying),
- archiving objects onto a stream, and retrieving them (new or
modified classes: All, State, Coder, BinaryCoder, StreamCoder,
BinaryStreamCoder, TextStreamCoder, and their encoding/decoding
subclasses),
- invocation building, currying, and execution (new classes:
Invocation, InvocationResult, Selector, TypeDescription),
- an _initial_ implementation of Distributed Objects (new classes:
Connection, PortCoder, Proxy, and various subclasses),
- Unicode support. The unicode example program is now a necessary
tool for creating the conversion and predicate tables. Tables for
unicode and iso8859-* encodings are included in the distribution.
(new or modified classes: ByteString, CharString, CharEncoding,
USASCIIEncoding),
- some new collections (new classes: IntDictionary, EqDictionary,
PointerDictionary, EqSet, IntArray, Trie, Heap),
- primitive implementation of bundles (new class: Bundle),
- tom.C class providing malloc, memcpy and the like,
- new class tom.Constants containing all definitions of constants
for the tom unit, instead of the previous classes FileUser,
TrieUser, etc (which have been removed),
- the new class Extension provides access to an object's extensions,
including the ability of having a particular method of said
extension be executed.
- Other changes:
-
Up: Resource Guide
|