Monadic Pratt parser