Koala Normalize
XT -- A Bundle of Program Transformation Tools
The tool
koala-normalize
performs Koala normalizations without code generation. It takes a Koala composition as input and produces an abstract syntax tree (AST) of the normalized Koala composition as output.
koala-normalize -I <directory with Koala components> \
-i <top-level component> \
-o composition.af
The output of
koala-normalize
can be connected to the input of additional (third-party) backends. This way, support for new languanges in addition to C can be added, or new levels of composition can be defined (see
http://www.cs.uu.nl/wiki/Merijn/PaperMultiLevelComponentComposition).
As a simple example, the output can be connected to a pretty-printer:
pp-koala -i composition.af
If certain normalization steps are not needed, they can be turned off with the '--no' switchs. E.g.,
koala-normalize -I <directory with Koala components> \
-i <top-level component> \
-o composition.af \
--no koala-pruner
The list of normalization steps can be obtained with the '--help' switch. Note that disabling arbitrary normalization steps may yield unpredictable results. Use with care.
--
MerijnDeJonge - 22 Dec 2004