我目前正在研究解析器,似乎我犯了一些错误 按照集计算。所以我想知道是否有人知道一个很好的工具来计算跟随和第一组,所以我可以跳过/重新评估解析器构造中这个容易出错的部分。
答案 0 :(得分:9)
查看http://hackingoff.com/compilers/predict-first-follow-set
这是一个很棒的工具,可以在语法中计算第一个和后续的集合。此外,您可以使用此可视化工具检查您的答案:
答案 1 :(得分:8)
我通过比较我的第一个/跟随集和this web-app
生成的一个来发现我的错误答案 2 :(得分:1)
我遇到的大多数解析器生成器没有明显的方法来转储这些信息,更不用说以可读的方式转储它了。 (我建造了一个,因为你建议的原因,但它本身不可用,我怀疑你想要其余的行李)。
如果您的解析器定义不起作用,您通常不需要知道这些事情来调试它。惊人地盯着规则有帮助;它还有助于构建你能想到的两个最小的语法实例,一个是你期望被接受的东西,另一个是应该被拒绝的轻微变体。
尽管有一个将转储此信息的解析器生成器,我很少使用它来调试语法,并且我用它构建了20-30个非常大的语法。