I've just written something using Leon's excellent GraphViz
module to turn a Shishi parser into a nice diagram of the state machine. While GraphViz turns a data structure into a graph, it would be really lovely for parser tuning to be able to play around with the graph in dotty and then read the resulting graph back into a data structure...