用于计算第一组和后续组的工具/应用程序

时间:2011-04-20 13:43:02

标签: parsing grammar

我目前正在研究解析器,似乎我犯了一些错误 按照集计算。所以我想知道是否有人知道一个很好的工具来计算跟随和第一组,所以我可以跳过/重新评估解析器构造中这个容易出错的部分。

3 个答案:

答案 0 :(得分:9)

查看http://hackingoff.com/compilers/predict-first-follow-set

这是一个很棒的工具,可以在语法中计算第一个和后续的集合。此外,您可以使用此可视化工具检查您的答案:

http://smlweb.cpsc.ucalgary.ca/start.html

答案 1 :(得分:8)

我通过比较我的第一个/跟随集和this web-app

生成的一个来发现我的错误

答案 2 :(得分:1)

我遇到的大多数解析器生成器没有明显的方法来转储这些信息,更不用说以可读的方式转储它了。 (我建造了一个,因为你建议的原因,但它本身不可用,我怀疑你想要其余的行李)。

如果您的解析器定义不起作用,您通常不需要知道这些事情来调试它。惊人地盯着规则有帮助;它还有助于构建你能想到的两个最小的语法实例,一个是你期望被接受的东西,另一个是应该被拒绝的轻微变体。

尽管有一个将转储此信息的解析器生成器,我很少使用它来调试语法,并且我用它构建了20-30个非常大的语法。