草庐IT

PEG parser——为什么python不再使用LL(1)

Python3.9中的PEG语法分析算法0题外话若文章有后续更新,可以在我的博客上看到。pre视频在这里。1PEG:ParsingExpressionGrammar1.1定义1.1.1语法形式上,一个解析表达文法由以下部分组成:一个有限的非终结符的集合\(N\)一个有限的终结符的集合\(\Sigma\),和\(N\)没有交集一个有限的解析规则的集合\(P\)一个被称作开始表达式的解析表达式\(e_s\)1.1.2语义PEG与CFG最关键的不同是,PEG的选择操作符是有序的。如果第一个选项匹配成功,则忽略第二个(以及之后的)选项。因此PEG的有序选择是不可交换的。1.2解释解析表达文法里每一个非

PEG parser——为什么python不再使用LL(1)

Python3.9中的PEG语法分析算法0题外话若文章有后续更新,可以在我的博客上看到。pre视频在这里。1PEG:ParsingExpressionGrammar1.1定义1.1.1语法形式上,一个解析表达文法由以下部分组成:一个有限的非终结符的集合\(N\)一个有限的终结符的集合\(\Sigma\),和\(N\)没有交集一个有限的解析规则的集合\(P\)一个被称作开始表达式的解析表达式\(e_s\)1.1.2语义PEG与CFG最关键的不同是,PEG的选择操作符是有序的。如果第一个选项匹配成功,则忽略第二个(以及之后的)选项。因此PEG的有序选择是不可交换的。1.2解释解析表达文法里每一个非