Tom (pattern matching language)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Tom
Tom (pattern matching language) logo.png
Developer(s)INRIA
Stable release
2.10[1] / 2013-03-21
Typeprogram transformation language
LicenseGPL, BSD licenses
Websitetom.loria.fr

Tom is a programming language[2] particularly well-suited for programming various transformations[3] on tree structures and XML based documents. Tom is a language extension which adds new matching primitives to C and Java[4] as well as support for rewrite rules systems.[5] The rules can be controlled using a strategy[6] language.

Tom is good for:

  • programming by pattern matching[7]
  • developing compilers and DSL
  • transforming XML documents
  • implementing rule based systems
  • describing algebraic transformations

Notes[edit]

  1. ^ https://gforge.inria.fr/frs/?group_id=78&release_id=7940
  2. ^ "Freecode".
  3. ^ "Program-Transformation.Org".
  4. ^ Java Community News Tom: A Pattern-Matching Compiler for Java
  5. ^ Emilie Balland, Paul Brauner, Radu Kopetz, Pierre-Etienne Moreau and Antoine Reilles (April 2008). "Tom Manual" (PDF).
  6. ^ "Data structure traversal with Tom".
  7. ^ "Pattern Matching Pointers".

External links[edit]