摘要: 自动插入分号规则 自动插入分号规则其实独立于所有的语法产生式定义,它的规则说起来非常简单,只有三条。 要有换行符,且下一个符号是不符合语法的,那么就尝试插入分号。 有换行符,且语法中规定此处不能有换行符,那么就自动插入分号。 源代码结束处,不能形成完整的脚本或者模块结构,那么就自动插入分号。 这样描 阅读全文
posted @ 2022-04-18 23:45 夏目友人喵 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 帮助我们快速理解编译原理相关的知识。 分析按照编译原理相关的知识,我们来设计一下工作,这里我们分成几个步骤。 定义四则运算:产出四则运算的词法定义和语法定义。 词法分析:把输入的字符串流变成 token。 语法分析:把 token 变成抽象语法树 AST。 解释执行:后序遍历 AST,执行得出结果。 阅读全文
posted @ 2022-04-18 23:40 夏目友人喵 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 今天了解一下 JavaScript 的文法 文法是编译原理中对语言的写法的一种规定,一般来说,文法分成词法和语法两种。 词法规定了语言的最小语义单元:token,可以翻译成“标记”或者“词”,在我的专栏文章中,我统一把 token 翻译成词。 从字符到词的整个过程是没有结构的,只要符合词的规则,就构 阅读全文
posted @ 2022-04-18 23:26 夏目友人喵 阅读(130) 评论(0) 推荐(0) 编辑