Change Log
TOM Home
TOM Tasks

Download TOM
TOM Software
Bug Database
Mailing Lists

tiggr at

Short Cuts:

all of 'em
tom [an error occurred while processing this directive]
tesla [an error occurred while processing this directive]
mu [an error occurred while processing this directive]
tomgtk [an error occurred while processing this directive]

all of 'em
tom 1.1.1
tomgtk 0.11
tesla 0.91
gp 0.5
mu 1.0

GIF free NOW!

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:
  • numerous bug fixes.

Up: Resource Guide
Copyright © 1997-2002 Programmers Without Deadlines