Tom (programming language): Difference between revisions

Content deleted Content added
RibotBOT (talk | contribs)
m robot Modifying: pt:TOM (informática)
m Ahecht moved page Tom (pattern matching language) to Tom (programming language) without leaving a redirect: Requested by Mwwv at WP:RM/TR: To keep WP:CONSISTENT with other programming languages. (using pageswap)
 
(40 intermediate revisions by 18 users not shown)
Line 1:
{{Short description|None}}
{{Infobox Software
{{Notability|Products|date=August 2021}}
{{Infobox Softwaresoftware
| name = Tom
| logo = Tom (pattern matching language) logo.png
| logo =
| screenshot =
| paradigm = [[Pattern-matching]]
| caption =
| developer = [[INRIA]]
| latest release version = 2.610<ref>https://gforge.inria.fr/frs/?group_id=78&release_id=7940 {{Dead link|date=September 2022}}</ref>
| latest release date = 20082013-1103-0421
| latest preview version =
| latest preview date =
| operating system = [[Cross-platform]]
| platform =
| genre = program transformation language
| license = [[GNU General Public License|GPL/]], [[BSD licenses]]
| website = http://{{URL|tom.loria.fr/}}
}}
{{Portal|Free and open-source software}}
'''Tom''' is a [[programming language]] particularly well-suited for programming various transformations on trees/terms and [[XML]] based documents. Tom is a language extension which adds new matching primitives to [[C (programming language)|C]] and [[Java (programming language)|Java]] as well as support for rewrite rules systems. The rules can be controlled using a strategy language.
'''Tom''' is a [[programming language]]<ref>{{cite web|url=http://freecode.com/projects/jtom|title=Freecode}}</ref> particularly well-suited for programming various transformations on [[tree structure]]s and [[XML]]-based documents. Tom is a language extension which adds new matching primitives to [[C (programming language)|C]] and [[Java (programming language)|Java]]<ref>Java Community News [http://www.artima.com/forums/flat.jsp?forum=276&thread=217701&start=0&msRange=15 Tom: A Pattern-Matching Compiler for Java]</ref> as well as support for rewrite rules systems.<ref>{{cite web|url=http://www.loria.fr/~moreau/Papers/tom-manual-2.6.pdf|title=Tom Manual|date=April 2008|author=Emilie Balland, Paul Brauner, Radu Kopetz, Pierre-Etienne Moreau and Antoine Reilles}}</ref> The rules can be controlled using a strategy<ref>{{cite web|url=http://langexplr.blogspot.ch/2008/03/data-structure-traversal-with-tom.html|title=Data structure traversal with Tom|date=4 April 2008}}</ref> language.
 
Tom is good for:
* programming by [[pattern matching ]]<ref>{{cite web|url=http://www.cs.ucr.edu/~stelo/pattern.html|title=Pattern Matching Pointers}}</ref>
* developing compilers and [[___domain-specific language]]s (DSL)
* transforming XML documents
* implementing rule -based systems
* describing algebraic transformations
 
==References==
{{reflist}}
 
==External links==
* [http://tom.loria.fr/ Tom language website]
* [http://gforge.inria.fr/projects/tom Tom gforge website]
* [http://tom.loria.fr/softwiki/release-2index.6php/manual-2.6/index.htmlDocumentation Tutorial and Reference Manual]
 
 
[[Category:Term-rewriting programming languages]]
[[Category:Programming language implementation]]
| paradigm = [[Category:Pattern- matching]]
 
[[Category:Pattern matching programming languages]]
[[pt:TOM (informática)]]
[[Category:Term-rewriting programming languages]]
[[Category:Graph rewriting]]