读书人

运用JavaScript构造C语言子集的编译器

发布时间: 2012-11-03 10:57:43 作者: rapoo

使用JavaScript构造C语言子集的编译器

jCompiler是我一年前完成的一个课程作业。目的是尝试为编程语言提供基于浏览器的编译器实现+骗取高分(这才是重点)。

实现的功能有:词法分析、语法分析、语法树生成(LL(1)文法)和中间代码生成(四元式)以及解释执行。
下面上图。

运用JavaScript构造C语言子集的编译器
?

也许有人会有这样的疑问,为什么要用JavaScript来实现一个编译器?意义何在?
ok~答案是,JavaScript是我当时用得最熟练的编程语言...
这个玩意的研究价值应当大于它的实用价值。
它现在的最大的价值是为纠结于编译原理这门课的童鞋提供一个相对完善的编码实例。
也许在不久的将来,它会演变为一个云端的IDE。Who knows.

另外,水平所限,程序仅支持火狐和webkit浏览器。

?

附录——C语言子集定义

?


我也看到那个新闻了...一种膜拜的感觉

读书人网 >C语言

热点推荐