Arpeggio - PEG parser Arpeggio is a recursive descent parser with memoization based on PEG grammars (aka Packrat parser). Documentation with tutorials is available here.