7

我应该从 ANTLR 4 中得到什么?

ANTLR 3 更快吗?我的意思是解析速度。
注意代码生成速度也会很有趣。

出于设计原因?

4

1 回答 1

8

首先是简单的部分——ANTLR 4 工具只对语法进行最少的分析,特别是不需要像 ANTLR 3 那样静态计算 DFA 表。因此,它在生成解析器方面比 ANTLR 3 快得多。

ANTLR 4 的初始 4.0 版本从略快于 ANTLR 3 到比它慢得多,具体取决于语法和输入。然而,ANTLR 4 能够处理许多 ANTLR 3 根本无法处理的语法和输入。此外,性能大大优于 ANTLR 3 的 ANTLR 4 运行时的优化版本已经在开发中。

调试辅助工具和操作指南文档即将发布,可帮助用户查找和纠正(或避免)与语法设计相关的性能问题。我相信其中一些也可以在 ANTLR 4 书中找到。

于 2012-12-16T15:48:09.393 回答