General Parser Combinators in Racket (2012)
epsil.github.io