9得票3回答
在我的编译器中编写单元测试(生成IL代码)

我正在使用C#编写一款名为Tiger的编译器,需要将Tiger代码转换成IL。在实现AST中每个节点的语义检查时,我为此编写了许多单元测试。这很简单,因为我所编写的CheckSemantic方法如下: public override void CheckSemantics(Scope sco...

7得票1回答
使用Ocamllex进行字符串词法分析(Tiger编译器)

我将尝试跟随Appel的《现代编译器实现》一书,使用Ocamllex编写词法分析器。规范要求词法分析器在翻译转义序列后返回字符串。以下代码是ocamllex输入文件的摘录: rule tiger = parse ... | '"' { let buffer = Buffer....