Parse Tree Graph Generator

soon there will be an SVG of my symantic parser. This will graph any Context Free grammar in BNF by converting it to CNF by using the CYK algorithm.

If you want hack on this project there are many places to start. You can add languages by adding grammars and lexers for examples. To add a different display method from dot files, you can write a new tree generator from the CKYChart class provided by cyk.py. The dot file generation is in viz.py and is essentially a Bredth first search on the graph/table. CYKChart is a table and remember that graphs and tables are mathmaically the same thing. Look at genTree in viz.py, it generates a tree from the graph, you can generate a different tree in say, xml to create an SVG or a JSON object to pass it to javascript to make a more interactive graph. Remember that you are not limited to LL or LR grammars. You can do any Context Free Grammar.

Future, plans, I plan to build a interface to TikZ (http://elishapeterson.wikidot.com/tikz:diagrams) or xyling (http://www.ling.uni-potsdam.de/~rvogel/xyling/)