PKU Compiler Principles 2022 Spring Course Project
- 如何用 enum 处理
- Dump 如何保持const
- 抽象出 ExpBaseAST 是否合适
- addr 的计算方式是否 ok
- 全局函数表
- 重名问题:全局标识符不可以重名
- 发现一些冗余:如果不用指针赋值的话,其实没必要用move
- 逻辑运算和位运算的关系
- 忘记把new tmp var赋值给addr
- stack不能用层数来给变量命名
- 去除最后一行:redir还是while parsing
- 哪些情况需要去除最后一行?
- string 的内存管理
我的一些想法
- 数据结构的抽象程度,比如WhileStack
- 捋清楚 Eval 和 Dump 的关系
- ExpBaseAST 是否有意义
- is_reg 到底好不好
- C++内存管理
- 编程风格:比如是否要多个构造函数?