负暄琐话

我的email: rot47('649@ 6(hF+`hd"w=92vhG{>}G3"@l M >:>6?4@56 \F')

囧囧ID:g9yuayon
901693次访问,排名34好友44人,关注者44
姓名:g9yuayon
前世:夜郎国厚脸皮神棍
魅力指数:0
名气:1
宠物:一只从来不对生人叫的看门狗
g9yuayon的文章
原创 244 篇
翻译 4 篇
转载 49 篇
评论 902 篇
g9的公告
最近评论
ErikLiu:看了这样的文章, 我会流泪.

如果说, 三十年前, 我流泪, 不奇怪,

30多岁的我, 流泪了
ErikLiu:看了这样的文章, 我会流泪.

如果说, 三十年前, 我流泪, 不奇怪,

30多岁的我, 流泪了
devil_hua:孤陋寡闻了。。。汗啊,看来知识缺得还真不是一丁点,哥们强
devil_hua:孤陋寡闻了。。。汗啊,看来知识缺得还真不是一丁点,哥们强
f891379133:好tuo,
文章分类
收藏
    相册
    旅游
    计算机科学
    Lambda the Ultimate
    软件开发
    Reddit编程专栏(RSS)
    正在读的书
    存档
    订阅我的博客
    XML聚合  FeedSky

    原创 开始读Compiler Design In C收藏

    新一篇: 用IE6也能内联搜索了 | 旧一篇: "鳄鱼邓笛”去世了

    我承认,我是墙头草,随着牛人口风倒。SD Times上登了Allen Holub颇有争议的文章,说不知道怎么写编译器的程序员不过是叶公好龙式的票友。我也不知道怎么写一个编译器。 学校学的编译原理除了一些基本理论外其它早就还给老师了。当年用作教材的Crafting A Compiler With C从来没有读完过。惭愧啊,惭愧。自己原来还在叶公好龙的层次上。嗯,羞愧之下,退而结网。前两天订的龙书第二版还没到。再说我学的理论够多了。现下需要会编译器,不是会吹。公司图书馆里的Crafting A Compiler With C烂得要死,也不知道被哪些变态翻过。想了想,屁颠屁颠地到图书馆把Allen自己的Compiler Design In C借了出来。这本书依照龙书的体例,但弱化理论而强调编译器的具体实现。书中讲解了完整的lex和yacc的实现代码,以及一个不带浮点计算的ANSI C编译器的实现。Allen在前言里提及代码能帮助人理解理论,而且实现具体的代码也能帮助人深刻地理解理论。我刚好也是这种人:非得先感性再理性。 计划一边读这本书,一边翻新到的龙书作为补充。书很厚,900来页。一天10页的话,要三个月才能读完。看看这次能不能坚持下来。

    P.S., 刚翻了两页。书是1990前写的。作者读者用的编译器要支持unsigned char,要支持长度为16个字符的变量名。要代码可以给他写信,记住说明是5寸盘还是3寸盘。作者还说,他故意使用老的C语法,func(arg1, arg2)char *arg1; char *arg2; 因为很多编译器还不支持新的(!)func(char *arg1, char *arg2) 。不过还好,读了莱昂氏后对传统的K&R语法也习惯了。恍惚间回到遥不可及的过去。那时我还是个小P孩儿,成天读《少年科学画报》,觉得电脑神秘难测,高不可攀。。。

    P.P.S, 学这个东西和职业发展无关。反正多半没有机会深入编译后台和语言设计。想写上几个编译器,纯粹因为编程和看A片一样,要"hardcore"才有趣味。

    发表于 @ 2006年09月09日 12:34:00|评论(loading...)|编辑

    新一篇: 用IE6也能内联搜索了 | 旧一篇: "鳄鱼邓笛”去世了

    评论

    #g9yuayon 发表于2006-09-09 12:58:00  IP: 74.116.36.*
    这个俺明白。好歹上了几年学,公司里一大票人都是写各类编译器的。我学写编译器也是玩票儿,深入一下大点的系统编程而已。
    #chengmeng 发表于2006-09-09 12:44:00  IP: 221.226.2.*

    如果只是实现一个语言的话,倒还是一般麻烦。直接翻译成中间代码,比如基于堆栈的代码,然后写一个虚拟机执行。如果要编译成机器码,要考虑的事情就多了,指令选择,数据流分析,寄存器分配,还要考虑机器相关的特性……等等等等。虽然如此,但编译器的前端,一直到代码生成都已经很成熟了,随便拿个flex和bison就行了,简单点的语言直接递归下降也可以。个人感觉产品级的编译器主要功夫都在优化上。
    #路人甲 发表于2006-09-09 22:48:00  IP: 221.196.140.*
    大哥,你是什么公司啊,那么多搞编译的牛人啊
    #turingbook 发表于2006-09-14 22:25:00  IP: 221.219.98.*
    呵呵,你们上学用的教材不错啊,挺上档次的。不知道是哪个学校?
    #man 发表于2006-09-18 15:55:00  IP: 221.122.51.*
    i guess : University of Toronto
    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © g9