This is the PNFG compiler. To run it, use $ java -cp . pnfg.Main -nfg examples/codfull.pnfg \ > ../nfg/examples/codfull.nfg You can then run codfull.nfg using the NFG interpreter. If you want to build the source code, including the grammar, install SableCC and do make all. make by itself will just compile the .java files. Known compiler flags: -noOptAnd : disable optimisation of && conditionals -noOptOutputs : disable optimisation of adjacent output stmts -O0 : implies -noOptAnd, -noOptOutputs -O1 : default, enable all opts -noDefaultActions : don't generate default global actions when only room actions are specified (you don't want this) -h : enable hint generation (currently redundant) -m : enable mutex set generation (default) -nfg : spit out an .nfg file -dot : spit out a .dot file Enjoy! Chris Pickett Sable Research Group McGill University http://www.sable.mcgill.ca/~cpicke/