Treetop – Powerful But Easy Ruby Parser Library
Treetop is a very well put together Ruby library for building Ruby-powered parsers. Treetop makes it possible to rapidly put together parsers for your own mini languages (a basic "arithmetic" parser is the main demonstration used on the Treetop site) and relies on parsing expression grammars to make it a pretty easy process.
Back in 2006 I posted about my own Ruby recursive descent parser on Ruby Inside, but Treetop goes a lot further in making it developer friendly and more powerful overall, even going as far as making blending grammars together as easy as mixing Ruby modules! Another key difference between a raw recursive descent parser and Treetop is that Treetop actually generates Ruby code that works on your particular grammar, somewhat like yacc or Ragel.
This is a really exciting project if you're into parsing or need to build a parser, so check it out. The official site has lots of useful documentation (although not many particularly deep examples, but they are bound to come in time). If you end up using Treetop to produce something, make sure to let me know!