摩诘

我思故我在 常辨而常新

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2004年10月20日

摘要: 昨天补记: 昨天考虑Tiger语言的语法分析时遇到一个问题,本来考虑每一个文法非终结符都用一个二叉树节点来表示,但是其中的一个递归推导的文法就会出现深度很深的二叉子树。比如函数的参数列表,其实类似参数列表这样的并排结构,用一个链表结构来表达是最合适的了。今天早上醒过来的时侯,突然想明白了,其实只要每次在做文法规约的时侯,把规约出来的递归结构做一次转换,转成链表结构就可以了。举例如下:... 阅读全文
posted @ 2004-10-20 08:34 sema 阅读(854) 评论(0) 推荐(0) 编辑

2004年10月19日

摘要: 昨天补记: 昨天晚上开始考虑Tiger语言的语法分析实现.词法分析不是很困难,语法分析稍微麻烦一点.需要先自己构造出LR(1)的分析表.我琢磨了半天,终于知道怎么把Tiger语言表达成EBNF表达式了.这步完成了,才能把Tiger语言表达成可以推理的文法. 至于整个程序外观,我想做成类似Visual Studio .NET 的形式. 它的可收缩窗口可以用MagicLibrary完成(h... 阅读全文
posted @ 2004-10-19 08:40 sema 阅读(1028) 评论(1) 推荐(0) 编辑

2004年10月18日

摘要: 小朋友帮我申请了这个Blog,每天要记记自己的流水帐了,!9:00--上午九点钟才起来,昨天晚上又睡晚了:总算看懂了那个LR(1)文法分析表的构造,开始研究要实现的Tiger语言的文法规则,发现还是挺繁琐的。9:30--到了办公室,继续琢磨用NANT构建每日编译(DailyBuild)。目前已经能够用NAnt自动从VSS源码管理服务器上下载源代码,然后进行编译了并自动运行测试代码了,今天要解决的问... 阅读全文
posted @ 2004-10-18 12:18 sema 阅读(745) 评论(1) 推荐(0) 编辑