Related articles |
---|
Source to source translator. amzal@prof.inria.fr (1995-08-30) |
Re: Source to source translator. johnm@soda.CSUA.Berkeley.EDU (1995-09-04) |
Re: Source to source translator. colas@aye.inria.fr (1995-09-05) |
Re: Source to source translator. tonyk@cybercom.net (1995-09-07) |
Re: Source to source translator. grosch@cocolab.sub.com (1995-09-16) |
Newsgroups: | comp.compilers |
From: | grosch@cocolab.sub.com (Josef Grosch) |
Keywords: | translator |
Organization: | Compilers Central |
Referemces: | 95-09-033 |
Date: | Sat, 16 Sep 1995 16:17:42 GMT |
amzal@prof.inria.fr (Mokrane Amzal) wrote:
> Do anybody have ever heard about a system which allows abstract tree
> rewriting based on rules given in high level language ?
The tool Puma which is part of the Cocktail Toolbox does what you are looking
for. It has been successfully used for source to source translation,
intermediate code generation, machine code generation, optimization and more.
Puma can be characterized as follows:
Puma is a tool supporting the transformation and manipulation of
attributed trees. It is based on pattern-matching and recursive
procedures. Puma cooperates with the generator for abstract syntax
trees Ast, which already supports the definition, creation, and
storage of attributed trees. Puma adds a concise notation for the
analysis and synthesis of trees. The pattern-matching capability
facilitates the specification of decision tables. Puma provides the
implicit declaration of variables, strong type checking with respect
to trees, and checks the single assignment restriction for variables.
The output is the source code of a program module written in one of
the target languages C, C++, or Modula-2. This module implements the
specified transformation routines. It can be integrated easily with
arbitrary program code. The generated routines are optimized with
respect to common subexpression elimination and tail recursion
elimination.
For more information please contact:
Dr. Josef Grosch
CoCoLab
Hagsfelder Allee 16
D-76131 Karlsruhe
Germany
Tel.: +49-721-697061
Fax : +49-721-661966
Mail: grosch@cocolab.sub.com
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.