我目前正在使用快乐的解析器生成器。
其他解析器生成器可以给出很好的消息,例如“意外的结束线,预期的 'then'”。很高兴我得到了当前的令牌和错误的位置。
你能给我一个例子来说明如何获取上面的错误消息吗?
我为此目的创作了一个快乐的功能。
请参阅我的博客文章:迈向更好的 GHC 语法错误
它已合并到此拉取请求RFC:On parse error - show the next possible tokens中。
一般来说,据我所知,如果您想要好的解析器错误,请使用Parsec而不是 Happy。