Java parser combinators