Tom is a software environment for defining transformations in Java. It is an extension of Java designed to manipulate tree structures and XML documents. It is compatible with Java: a Java program is a correct Tom program. Data are represented using an efficient tree based data-structure. Java built-ins (int, char, String, etc) can be used. Tom provides pattern matching facilities to inspect objects and retrieve values. A powerful strategy language can be used to control transformations.

Changes

A %rule construct. ACU normalization rules. Terms with pointers. A new compiler. AU matching. FL (flatten lists) matching. A new strategy library.

URL: Tom: a software environment for defining transformations