Tom 2.5 released: the way to do pattern matching in Java

Tom integrates pattern matching and rule based programming facilities into Java. It is particularly well-suited for programming various transformations on trees/terms and XML based documents.

Tom adds new constructs to Java that enable information retrieval and transformation (via conditional rules) in lists and trees. Traversals of trees and transformations are based on a strong theoretical background. Tom compiler is mature enough to be used for large scale developments and applications, and integrating Tom in any existing application is straightforward, as Tom produces Java source code.

Some applications developed in Tom (both in academia and industry):
- requests transformations (ex: XQuery requests' optimizations )
- the Tom compiler itself
- languages semantics, interpreters and program transformation tools
- a generator of canonical abstract syntax trees (Gom)
- a Just In Time strategy compiler using dynamic Java bytecode transformation
- a proof assistant for supernatural deduction
- a compilation algorithm for anti-pattern matching and disunification

A guided tour of Tom can be found here, and the release notes here.

Tom is available, in open source (GPL/BSD License), from the web page:

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Eclipse plugin

The Eclipse plugin for Tom was also updated, and allows to use Tom within Eclipse, with automatic compilation and all the common features. And it also works with the last Eclipse release.