Rooibos is a parser combinator library for Python. Modelled somewhat after yeanpypa (self-contained, public domain), but compensates for what I considered a fatal flaw in yeanpypa (no good way to describe a recursive grammar.) Has a fatal flaw of its own (can only parse strictly LL(1) grammars — no backtracking is yet possible.) Originally used in Eightebed, but provided here for ease of transplanting into other projects.
rooibos.py in the Eightebed distribution