4

我正在使用 GHC 在 Windows 上编译。这是我的参考代码http://hpaste.org/86539

问题是以下表达式无法解析: 3+2 < 1+-4 <= -3 << 1. 它应该解析为:

在此处输入图像描述

..但是,-当它显然是最高操作员时,我会感到意外。我怀疑这是因为我使用了try第 55 行,但是没有它<<<并且重复一个符号的运算符无法正确解析。

我正在寻求建议或提示。

4

1 回答 1

6

问题在第 56 行:

P.lexeme <$ string s

应该读:

P.lexeme gmlLexer $ string s

前一个构造是匹配s,然后返回函数P.lexeme作为解析的结果!随后>>将结果扔掉,因此它类型检查。

您想要做的是后面的行:将P.lexeme您的语言的 应用gmlLexer到解析器以进行匹配s

于 2013-04-25T07:03:20.267 回答