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