Plycc
项目简介
在这个项目中,我使用了基于Python的Lex-Yacc库 ,并且全项目使用Python编写
此编译器可以生成包含短路条件的if结构对应四元式,while结构对应四元式
项目总行数约700,其中词法分析100行,语法分析600行
项目使用 Github 进行管理,仓库位于,上面有对应的 commit 记录和代码行数统计
用Python构建项目的原因有如下几点:
Python作为解释型语言,它要比C语言这种编译型语言,更加适合快速搭建原型(如我们的编译器)
C这类编译型语言适合写一些性能要求较高的程序
Python隐藏了一些底层的编程细节,我们可以更专注于实现功能,而不是调试用C可能会产生的各种语法错误
文法
start_state -> INT ID OPBRAC CLOSEBRAC stmts
stmts -> OPENFLR stmts CLOSEFLR
2021-07-12 15:27:50
79KB
Python
1