The primary tools, reflex
and trison
aren't "yet another" incarnation/clone of flex
and bison
. The critical feature is that neither are bound to a particular target. The two tools are simply engines for generating abstract state machines. The generation of code for a specific target is done via preprocessor and is governed by set of specification files.
-
A single "targetspec" file indicating the required parameters which must be specified in the primary tool source
-
One or more "codespec" files which use a macro language to inject the state machine tables and targetspec-specified parameters into the generated code
The customization that this paradigm provides is twofold. The targetspec file provides a facility to customize the generated code from the primary tool source. The codespec file(s) allow any level of customization to be done -- in fact, if one doesn't like a particular target provided (or if the desired target is not provided), one can write their own targetspec/codespec files to implement the desired target however one sees fit.
TODO: write about parameter types: identifier, string, strict code block, dumb code block, etc
Hosted by
-- Generated on Mon Jan 7 22:58:03 2008 for BARF by
1.5.1