Parser combinators.