Skip to content

读完《ANTLR 4 权威指南》,还是得自己写一遍

2025 年 7 月读完。

ANTLR 是很棒的语言解析器生成工具。定义好词法和语法规则,它就能生成解析器和语法树,省去大量机械工作。书里讲到规则名会自动变成语法分析树上的节点,这种从文法到代码的连接很漂亮。

可这本书并不轻松。语义判定、歧义处理、通道、错误监听器,概念挨个看似乎都明白,真正面对一段有歧义的语法时,还是会混在一起。尤其 ANTLR 遇到多个可匹配分支会选择第一条,规则顺序不再只是排版问题,而会影响输入的解释。

我大学时学过编译原理,也写过词法、语法和语义分析。时间一久,许多东西仍会忘。重新读这本书最大的感受是,纸上得来终觉浅。至少要亲手写一个 .g4 文件,跑出 Lexer 和 Parser,再用 Visitor 处理一棵真实的树,概念才会落稳。

书能把路标出来,剩下那段路还是要自己走。

Released under the MIT License.