Tom is a software environment for defining transformations in Java.

News

About Tom

What is Tom? What's it good for? What target languages can it handle? Why is it called Tom?

Applications

What have been done with Tom? From sexy Boulderdash demo to serious prover and compiler implementations.

Support

Having trouble? Subscribe to the tom-users mailing list, ask a question, report a bug, or contact the team.

Downloads

Download a stable or development release of Tom. Get scripts and modes for Emacs or Vim.

Documentation

Tutorial, language reference manual, user guide, cookbook, and academic publications can be found here.