signature PARSER = sig structure P: PPC type parseCtx type def val createParseCtx: string -> string list -> parseCtx val parseDef: parseCtx -> def * parseCtx end