假设我正在定义以下解析器:
let identifier = many1Satisfy isLetter //match an identifier
let parser = identifier //our parser is only to match identifiers
test parser " abc" //the text to parse contains a leading space which should yield us an error
解析时,会发生错误,正如人们所期望的那样:
Failure: Error in Ln: 1 Col: 1
abc
^
Unknown Error(s)
我很好奇为什么它不能确定问题是他在期待一封信却找不到。我是否希望自己以某种方式将该信息添加到解析器中?