Lukas Renggli's PetitParser library ported to TypeScript