1 个不稳定版本
| 0.0.1 | 2022年3月13日 |
|---|
90 在 #toy
17KB
440 行
简单
学习编译器设计的玩具语言/编译器。
截图

语法
| 符号 | 符号定义 |
|---|---|
| 函数 | fn <Ident>? <FunctionParams> <FunctionReturn>? <FunctionBody> |
| 函数参数 | ( ) |
| 函数返回值 | -> i64 |
| 函数体 | { <表达式> } |
| 表达式 | <值> <运算符>? <表达式>? |
| 值 | <Ident> | <Literal> |
| 运算符 | + |
| Ident | [A-Za-z]* |
| 字面量 | [0-9]* |
待办事项
- 扩展语法以添加可以包含多个函数的模块
- 实现符号表
- 扩展语法以包含函数的捕获参数
- 添加更多运算符和运算符优先级
技术栈
依赖项
~7.5MB
~167K SLoC