|File Search||Catalog||Content Search|
The nodes are defined in a Yacc-like fashion. The tree can be unparsed (ie. treewalk) and rewritten (ie. term substitution). Kimwitu++ gives you powerful pattern matching for specifying unparse and rewrite rules.
Kimwitu++ is an extension to C++. It introduces Yacc-like node definitions, the unparse and rewrite rules, and extensions for pattern matching within functions. It will translate its input files into pure C++.
To build the tree you might use a parser generated with Bison, but you are free to use other tools. There also exists Kimwitu (also packaged for Debian) which interfaces with C instead of C++ which can also be used in C++ projects, but Kimwitu++ has some extensions one might consider useful.
=-------------- = = The Term Processor Kimwitu++ = =-------------- Kimwitu++ is a system that supports the construction of programs that use trees or terms as their main data structure. For the Kimwitu++ web site (including newest version) have a look at its homepage on http://www2.informatik.hu-berlin.de/sam/kimwitu++. Kimwitu++ is derived from Kimwitu 4.4, see http://purl.oclc.org/net/k more»
KC++(1) KC++(1) NAME Kimwitu++ - generate C++ code from Kimwitu++ input SYNOPSIS kc++ [options] file... DESCRIPTION kc++ reads the abstract syntax definition, function definitions, rewrite rules and unparse rules from the files given on the command line, or from the standard input if no more»
kimwitu++ (2.3.13-2) unstable; urgency=low * Only suggest documentation (closes: #525831) -- Michael Piefel <email@example.com> Wed, 17 Feb 2010 17:45:22 +0100 kimwitu++ (2.3.13-1) unstable; urgency=low * New upstream: Can compile now without bison even if cp -p fails (closes: #491090) -- Michael Piefel <firstname.lastname@example.org> Thu, 21 Jan 2009 17:35:20 +0100 kimwitu++ (2.3.12-1) unst more»
This is the list of user-visible changes in kimwitu++. Please see src/ChangeLog for a more detailed more»
This package was debianized by Michael Piefel <email@example.com> on Mon, 29 May 2000 09:25:08 +0200 more»