1 Star 0 Fork 1

mmtsd/学习编程语言实现模式

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

学习《编程语言实现模式》

image-20250405220236139

本人阅读与学习《编程语言实现模式》(ISBN: 9787560977003),书本中的示例代码是基于Antlr3的,我在学习时使用Antlr4重新实现了一遍书中几乎所有的示例代码,在这里将自学过程中的项目分享出来,供大家学习与参考。

目录介绍

目录 用途
Projects 该目录为本人跟随书本自学时所创建的项目,部分项目里有“Learn”和“Learn_Antlr4”两个文件夹,前者是书本的参考代码(基于Antlr3),后者是我使用Antlr4根据书本示例代码来写的项目(力求和原版参考代码输出一致)
Windows工具 antlr4最新版控制台工具
ignore文件 有针对Visual Studio和针对Java项目的gitignore文件
本书参考代码 《编程语言实现模式》书本附带的示例代码
笔记 本人自学Antlr4时记录的笔记
通用脚本 一些针对Antlr3和Antlr4的命令行脚本

开发环境配置

IDE:IntelliJ IDEA

IDE插件:ANTLR v4

image-20250405221619757

Java版本(版本无需完全跟我的一致,大家可自行选择合适的):17.0.6

image-20250405221813875

运行代码

以《30 基于规则的翻译器》小节为例

image-20250405222105134

运行原版示例代码

test目录下找到单元测试并运行即可

image-20250405222235783

运行Antlr4版本的示例代码

与原版的基本类似,也是在test目录下找到单元测试并运行。由于Antlr4和Antlr3有较大差别,我只能尽量做到输出一致,但是具体的代码实现可能会相差很大。

image-20250405222451522

空文件

简介

阅读与学习《编程语言实现模式》(ISBN: 9787560977003),书本中的示例代码是基于Antlr3的,我在学习时使用Antlr4重新实现了一遍书中几乎所有的示例代码。 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/mmtsd/LearnLanguageImplementationPatterns.git
git@gitee.com:mmtsd/LearnLanguageImplementationPatterns.git
mmtsd
LearnLanguageImplementationPatterns
学习编程语言实现模式
master

搜索帮助