BNFで出力したらその後の条件設定やデバック等は?

BNFでがしがし記述するのはいいんだけど、
その後のデバックとかとあるエラー条件になったらどういう補完処理をするとか はどのように実装するのかなぁ?Rubyを解析するしかないか?

で、そんな要望に対してがんばっちゃうようなソフト発見(でも、高そう・・・)
http://www.synopsys.co.jp/products/cocentric/studio.html