我的终极懒惰是我拖延到了part A deadline前一天还什么都没有写~~疯狂的10个小时以后交了front end暂时拖延~~惭愧啊惭愧,实在是最近生活太混乱~~
Part A
1. Front end
abstract syntax + lexer and parser
由BNFC完成,使用老师给的cf文件加以修改
type checker
Haskell完成, 基本上是根上次给interpreter写的差不多,唯一区别是需要加工abstract tree保留type信息,以及确认return部分~pass test suit没错,但是明显是有bug的设计,实在是时间太赶,居然因此妥协了代码质量,我再惭愧一次~~
main program calls all things above and produce a report
小菜~
2. Back end generates code for JVM
下周一定写完~~
Part B
3. Back end generates code for LLVM