Related articles |
---|
TXL 6.0, a Rapid Prototyping Tool for Computer Languages cordy@qucis.queensu.ca (1992-02-20) |
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
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.