A transformation language is a computer language designed to transform some input text in a certain formal language into a modified output text that meets some specific goal.

Program transformation systems such as Stratego/XT, TXL, Tom, DMS, and ASF+SDF all have transformation languages as a major component. The transformation languages for these systems are driven by declarative descriptions of the structure of the input text (typically a grammar), allowing them to be applied to wide variety of formal languages and documents.

Macro languages are a kind of transformation languages to transform a meta language into specific higher programming language like Java, C++, Fortran or into lower-level Assembly language.

In the model-driven engineering technical space, there are model transformation languages (MTLs), that take as input models conforming to a given metamodel and produce as output models conforming to a different metamodel. An example of such a language is the QVT OMG standard.

There are also low-level languages such as the Lx family[1] implemented by the bootstrapping method. The L0 language may be considered as assembler for transformation languages. There is also a high-level graphical language built on upon Lx called MOLA.[2]

There are a number of XML transformation languages. These include Tritium, XSLT, XQuery, STX, FXT, XDuce, CDuce, HaXml, XMLambda, and FleXML.

See also

References

  1. The Lx transformation language set home page Archived 2012-07-10 at archive.today. Lx.mii.lu.lv (2007-10-08). Retrieved on 2013-08-10.
  2. MOLA pages. Mola.mii.lu.lv. Retrieved on 2013-08-10.


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.