项目概述
功能需求
- 词法分析
- 语法解析
- AST 构建
- 解释执行
- 变量与函数
技术栈
- 纯 Rust 实现
- 递归下降解析器
- 访问者模式
项目结构
mini-interpreter/
├── Cargo.toml
├── src/
│ ├── main.rs # 入口
│ ├── lib.rs # 库入口
│ ├── lexer/
│ │ ├── mod.rs
│ │ ├── token.rs # Token 定义
│ │ └── scanner.rs # 词法扫描
│ ├── parser/
│ │ ├── mod.rs
│ │ ├── ast.rs # AST 定义
│ │ └── parser.rs # 语法解析
│ ├── interpreter/
│ │ ├── mod.rs
│ │ ├── env.rs # 环境
│ │ └── eval.rs # 执行器
│ └── error.rs # 错误处理
└── tests/
└── interpreter_test.rs