making more of the generic pratt parser