我试图为算术表达式提出一个非模糊的语法,以使Earley解析器更快,但我似乎遇到了麻烦。 这是给定的模糊语法
S -> E | S,S
E -> E+E | E-E | E*E | (E) | -E | V
V -> a | b | c
这是我尝试使其明确无误
S -> S+E | S-E | E | (S+E) | (S-E) | (E)
E -> E*T | E
T -> -V | V
V -> a | b | c
它可以很好地解析一切,但与使用含糊不清的内容相比,没有任何显着的加速。