Tree Transformation Language


Tree Transformation Language

(functional language, rule-based language)(TXL) A hybridfunctional language and rule-based language developed byJ.R. Cordy et al of Queen's University, Canada in 1988. TXL is suitable for performingsource to source analysis and transformation and for rapidlyprototyping new languages and language processors. It usesstructural transformation based on term rewriting.

TXL has been particularly successful in software engineeringtasks such as design recovery, refactoring, andreengineering. Most recently it has been applied toartificial intelligence tasks such as recognition ofhand-written mathematics, and to transformation of structured documents in XML.

TXL takes as input an arbitrary context-free grammar inextended BNF-like notation, and a set of show-by-exampletransformation rules to be applied to inputs parsed using thegrammar. TXL supports the notion of agile parsing, theability to tailor the grammar to each particular task using"grammar overrides".

Latest version: FreeTXL 10.3, as of 2003-10-26.

TXL Home.

["TXL: A Rapid Prototyping System for Programming LanguageDialects", J.R. Cordy, C.D.; Halpern and D. Promislow,Computer Languages, Vol. 16, No. 1, January 1991, pp 97-107]

["Source Transformation in Software Engineering using the TXLTransformation System", J.R. Cordy, T.R. Dean, A.J. Malton andK.A. Schneider, Journal of Information and SoftwareTechnology, Vol. 44, No. 13, October 2002, pp 827-837]

["Recognizing Mathematical Expressions Using TreeTransformation", R. Zanibbi, D. Blostein and J.R. Cordy, IEEETransactions on Pattern Analysis & Machine Intelligence,Vol. 24, No. 11, November 2002, pp 1455-1467]

["Agile Parsing in TXL", T.R. Dean, J.R. Cordy, A.J. Maltonand K.A. Schneider, Journal of Automated Software Engineering,Vol. 10, No. 4, October 2003, pp 311-336]