I've used Instaparse twice. Once with my company Millennial Media for the 2013 ICFP and once to create a SQL like query language that can be run in a REPL to access zookeeper nodes. Both times I was blown away at how easy it was to parse and interpret a grammar. Thanks, +Mark Engelberg , for this great library.