代码改变世界

我在CodePlex上建的开源项目:JavaScript Lexer and Parser(欢迎加入)

2008-06-09 14:15  横刀天笑  阅读(4201)  评论(24编辑  收藏  举报
要写这个东西的起因见这篇博客,很想将这个插件完善,但是发现必须先弄出JavaScript的语法树,如是也想乘机好好学习下编译原理,就有了这个case的想法。
我提交到CodePlex上的代码大量的参照了开源项目SharpDevelop和Eclipse的代码(注意是大量,如果你觉得很多代码很相似请不要见怪,我模仿过来的),很想努力的把这个做好,但是由于精力有限,编译原理也不熟悉(非计算机专业出身,没学过这玩意),如果有人愿意共同来完成这个case,我非常欢迎

项目地址:http://www.codeplex.com/JSLexerParser
现在分三个项目,如下图所示:

JavaScriptLexer是词法分析器,这个基本上完成了(但是没有做错误处理和错误恢复)
JavaScriptParser是语法分析器,入口方法是Parse(),可以得到一个抽象语法树,语法分析器还没有完成,在表达式分析的地方卡壳了,
Test是一个测试工程

如果你有兴趣参与你可以向我发Email或用QQ联系
Email:yuyijq ## gmail.com ##->@
QQ:258169631


我的想法是这样的:
第一步:完成这个词法、语法分析器
第二步:将这个分析器应用到我上面提到的那个插件中去,这样也可以检验一下分析器
第三步:如果有兴趣,想更进一步研究编译原理,可以在分析器基础上尝试编译成IL代码(可选)