- CLR VIA C# 难道没告诉你不要在父类的构造函数中调用子类的方法吗?
- lmth1 一个便捷的网页信息提取工具0, Why lmth1?玩Python的人十有八九用过urllib,扒数据的十有八九用过BeautifulSoup。我也不例外,平时抓数据几乎全用Beautif...
- @啊汉
存在通用的算法,可以参考c++ algorithm库里的rotate
Bentley给出的这个rotate好看,不过不够快 - 举个简单的例子:
12345->23451
三次反转需要0+6+6=12次赋值操作
但6次赋值加一个局部变量就足以了 - 这根本不是最快的方法,LZ自己再多想想
- 书很多,不过质量和难度都一般,除了收藏的那三四本
尽管如此,工作的人能有这个毅力看书,很难得 - C Standard Library by P.J.Plauger is enough, it shows you an industrial implementation of 15 c standard libs.
- 10天写一个语言真没什么,了解编译器的都能做到。
不过js发展到现在这程度,Brendan自己肯定没想到。 - 文章不错 支持下
- 这用的是什么破翻译软件啊,上面那两位看内容了么?
- 标准的码农心态
- 就是Visual Studio自带的类图生成工具了
- 多谢帮顶,你提到的后面那本书似乎还是咱们院老师翻译的。我看过一点点,由于理论性很强,所以没看下去,也许以后应该读一下
- 参复制到这个scope中,然后函数体的形参在scope中寻找对应的实参,如果实参不全则会生成一个curry function。
2,解释型语言和CLR没什么关系,之所以提到CLR是因为我写的解释器构建于CLR之上
3,BNF参考了Htdp中的intermediate student grammar。词法用的是传统的词法分析,语法用的是带回退的LL(1),中间结构用的则是异构抽象语法树。... - 没想到师兄上班之后还有时间写这么认真的文章,赞一个
- 手册里面已经说的很明白了
- 自己从本科那会就开始想写一个编程语言,不过那会缺乏编译的功底。自从阅读了DSL和Language Implementation Patterns,并写了一个一定规模的Parser之后,对编译有了一个比...
- 看了一下LZ的AST的结构
ArrayAssign我想是为了用文本量初始化数组,不过我有个疑问,为什么ArrayLength也需要单独定义一个AstNode,直接用正常的对象属性获取不可以吗? - @W.Robert
放眼望去,就这一个回复靠谱 - @飞林沙
没写过GPL,但在现有的平台上搞一个小语言还是没问题的
不过这些东西和牛人没关系吧?学过编译的都应该有这个能力了。 - @飞林沙
和这些人比,能接近已经很不错了
与其自己瞎鼓捣,不如借鉴下人家的经验
至于你说的牛人生下来就是牛人,不予评论 飞林沙: 好像你几年前就是这么说的,不知道你心中的牛人是个啥样子。
@_Luc__Luc_: 看了也成不了牛人,牛人生下来就是牛人,所以我们还是别看这些书,踏踏实实走自己的路比较好
感觉LZ没仔细看,Coders at work还是有很多值得借鉴的东西的
btw,受采访的人六成以上都没推荐TAOCP,包括Knuth本人。
就算成不了牛人,能接近他们就已经不错了。- LZ的想法不错,不过编译这样的东西估计一般的园友接受不了,LZ要做好曲高和寡的心理准备。
既然是手写前端,估计用的是递归下降没跑了,LZ是先生成AST,然后在Walk AST的时候执行对应的C# code吗?还是采用别的方法?
此外,可否看下miniSharp的BNF?比较感兴趣 - 感觉LZ没仔细看,Coders at work还是有很多值得借鉴的东西的此外
btw,受采访的人六成以上都没推荐TAOCP,包括Knuth本人。 乱舞春秋: 不好意思,我对动辄思想装高深人士向来这个态度。
或许你博大精深,或许你会很...
博大精深肯定谈不上,用过不少语言,看过一些书倒是真的。










