> Try Treetop:
> http://treetop.rubyforge.org/

And then try parslet:
http://kschiess.github.com/parslet/

k