本文记录一个小型的玩具语言开发过程。作为学习实践 Rust 的副产品。
本过程将覆盖下面一些要点:
- 解析文本格式的源代码。
- 构建 AST (语法树)。
- 从语法树翻译为可执行的目标代码。
- 执行目标代码(作为验证)。
链接:

本文记录一个小型的玩具语言开发过程。作为学习实践 Rust 的副产品。
本过程将覆盖下面一些要点:
链接:
1 gydi Mar 17, 2022 我也分享一下我的 https://github.com/zzzgydi/weso-lang 用的 lalrpop 作语法树生成,可以翻译成中间代码,可以执行。实现了一下短路运算。 |
2 macrorules Apr 4, 2022 所以没有自己写虚拟机?请教大佬一个问题,既然这样,wasm 是不是规定了接口,比如 `+` 必须要翻译成 `struct Add { lhs: Expr, rhs: Expr }` 这种结构体,然后再把结构体传给 wasm 接口? |