BinOp的存在本身就有问题:
BinOp在AST中用字符串表示,我们就没办法检查两个操作数的类型。
BinOp成了特殊概念,而不是普通的函数。
fingerpasswang/trivial-compiler
In ghci:
:cd /path/to/current/dir
:load CodeGenerator
or :load Parser
parse p_exp "" "(mul (sub 5 (add 1 2)) 4)" main_gen "10" main_gen "11"