TXL 6.0, a Rapid Prototyping Tool for Computer Languages

cordy@qucis.queensu.ca (Jim Cordy)
Thu, 20 Feb 1992 15:18:59 GMT

          From comp.compilers

Related articles
TXL 6.0, a Rapid Prototyping Tool for Computer Languages cordy@qucis.queensu.ca (1992-02-20)
| List of all articles for this month |

Newsgroups: comp.lang.misc,comp.compilers
From: cordy@qucis.queensu.ca (Jim Cordy)
Followup-To: poster
Keywords: translator, tools, FTP
Organization: Computing & Information Science, Queen's University
Date: Thu, 20 Feb 1992 15:18:59 GMT

Release 6.0 of TXL: Tree Transformation Language is now available via
anonymous FTP from qusuna.qucis.queensu.ca (130.15.1.100). Change
directory to "txl" and fetch the file "00README" for full information on
fetching it. An email version is available on request for those who have
no access to ftp.


Release 6.0 fixes all known bugs, extends TXL to smoothly handle languages
with multiple comment conventions, has better diagnostics, is more robust,
and has many other improvements over the previous release.


For those of you unfamiliar with TXL, here is a short abstract:


TXL 6.0, (c) 1988-1992 Queen's University at Kingston
-----------------------------------------------------
TXL is a generalized source-to-source translation system suitable for
rapidly prototyping computer languages and langauge processors of any
kind. It has been used to prototype several new programming languages as
well as specification languages, command languages, and more traditional
program transformation tasks such as constant folding, type inference,
source optimization and reverse engineering.


TXL is NOT a compiler technology tool, rather it is a tool for use by
average programmers in quickly prototyping languages and linguistic tasks.
TXL takes as input an arbitrary context-free grammar in extended BNF-like
notation, and a set of show-by-example transformation rules to be applied
to inputs parsed using the grammar. TXL will automatically parse inputs
in the language described by the grammar, no matter if ambiguous or
recursive, and then successively apply the transformation rules to the
parsed input until they fail, producing as output a formatted transformed
source.


TXL is particularly well suited to the rapid prototyping of parsers (e.g.,
producing a Modula 2 parser took only the half hour to type in the Modula
2 reference grammar directly from the back of Wirth's book), pretty
printers (e.g., a Modula 2 paragrapher took another ten minutes to insert
output formatting clues in the grammar), custom or experimental dialects
of existing programming languages (e.g., Objective Turing was prototyped
by transforming to pure Turing and using the standard Turing compiler to
compile the result), and transformation tasks such as program
restructuring.


TXL 6.0 comes with fully portable ANSI C source automatically translated
from the Turing Plus original, self-instruction scripts and a pile of
examples of its use in various applications.


Jim Cordy
--
Prof. James R. Cordy cordy@qucis.queensu.ca
Dept. of Computing and Information Science Phone +1 (613) 545 6054
Queen's University at Kingston FAX +1 (613) 545 6513
Kingston, Canada K7L 3N6
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.