正在用Scheme写编译器,有人愿意合作或者交流一下吗?

2012-08-14 21:42:50 +08:00
 silverbullettt
https://github.com/silverbullettt/o-lex

以前没写过编译器,觉得人生不完整。现在写了几天,准备完成词法分析了。我的想法是词法分析和语法分析(前端)都写成通用的生成器,即输入规则,输出parser。语义部分等到时候再设计……

还有这代码还没有文档,过两天补上= =

RT,我在这方面没有经验,有人愿意合作或者交流一下吗?
4716 次点击
所在节点    编程
6 条回复
qiao
2012-08-14 22:12:33 +08:00
nice, 同样觉得没写过写过编译器人生就不完整。不过目前我还是准备先多做些理论性研究,多读几本相关著作后再开始写。话说楼主居然在代码中用了 unicode 来作为 identifier,实在是少见哈 :p
limu
2012-08-14 22:47:55 +08:00
楼主真是年轻有为阿.scheme的解释器照着 SICP 估计能比较容易写出一个来.
编译器还是挺难写的,后端的代码生成准备用啥? LLVM?
Numbcoder
2012-08-14 22:53:57 +08:00
不错。
想问一下,用 Racket 这个有什么好处,为什么不用原始的 Scheme ?
silverbullettt
2012-08-14 23:48:44 +08:00
@qiao 那完全得益于DrRacket这个环境够强悍,一般理论书上也是用那几个符号描述NFA,我就干脆拿来用了:p,其实还可以用中文做id……

我的编译原理理论知识完全来自上课(我们这门课的老师很好),前端需要的理论知识很少,所以这次我是想写到语义部分的时候以实践带着理论学习。
silverbullettt
2012-08-14 23:50:02 +08:00
@limu 所以说现在还没想好咧,到时候再看吧。您有什么建议吗~除了LLVM
silverbullettt
2012-08-14 23:50:58 +08:00
@Numbcoder DrRacket提供了很多Scheme没有的东西,比如match

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/45147

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX