|Release 2.0 of term processor Kimwitu++ firstname.lastname@example.org (Michael Piefel) (2001-03-22)|
|From:||Michael Piefel <email@example.com>|
|Date:||22 Mar 2001 01:18:49 -0500|
|Posted-Date:||22 Mar 2001 01:18:49 EST|
We are pleased to announce the release 2.0 of Kimwitu++. It is
available from http://site.informatik.hu-berlin.de/kimwitu++
What is Kimwitu++?
Kimwitu++ is the successor to Kimwitu. Like Kimwitu, it is a tool for
processing trees (i.e. terms). It is a meta tool: Kimwitu++ can be used
for generating software - especially when building compilers. Kimwitu++
has its own input language, which allows the definition fo the tree
structure and of functions operating on the tree. It uses the input to
generate a number of C++ files, which are then bound to a program using
the C++ compiler.
Kimwitu++ can be easily combined with parser generators like flex
and bison. While the parser deals with processing the grammar rules,
kimwitu++ deals with creating an abstract syntax tree. In further
passes, this tree can be used to generate target code. These passes
can be implemented in the same program or a different one - Kimwitu++
supports saving the tree into files.
For processing the tree, Kimwitu++ supports two mechanisms: unparse
rules (for code generation), and rewrite rules (for transformations).
Each rule can be tailored to a specific node structure using pattern
matching; all rules together are applied to the tree recursively. To
support different rules for the same kind of node (in different
application contexts), Kimwitu++ supports the definition of views.
Inside the rules, Kimwitu++ allows to integrate C++ code; it also
provides some extensions to C++. For each node type, a class is
generated, which can be extended with user-defined methods.
We have successfully used Kimwitu++ to implement a tool environment for
SDL, the ITU Specification and Description Language. Kimwitu++ is also
written in itself.
If you have any problems with Kimwitu++, please let us know.
|=| Michael Piefel firstname.lastname@example.org
|=| Humboldt-Universitaet zu Berlin http://www.piefel.de
|=| Tel. (+49 30) 2093 3831
Return to the
Search the comp.compilers archives again.