. 词法分析 1.1 词法记号及属性 词法记号.模式.词法单元 记号名 词法单元列举 模式的非形式描述 if if 字符i,f for for 字符f,o,r relation <,<=,=,... <或<=或=或... id sum,count,D5 由字母开头的字母数字串 number 3.1,10,2.8 E12 任何数值常数 literal “seg.error” 引号“和”之间任意不含引号本身的字符串 历史上词法定义中的一些问题 ---- 忽略空格带来的困难…
文章中引用的代码均来自https://github.com/vczh/tinymoe. 看了前面的三篇文章,大家应该基本对Tinymoe的代码有一个初步的感觉了.在正确分析"print sum from 1 to 100"之前,我们首先得分析"phrase sum from (lower bound) to (upper bound)"这样的声明.Tinymoe的函数声明又很多关于block和sentence的配置,不过这里并不打算将所有细节,我会将重点放在如何…