题
考虑到这个表达:
3 + 2 + 2 * 2 = ?
会14吗?
解决方案
否。这就是您从左到右评估中获得的。 LL解析器将建造与LR解析器相同的解析树,
+
/ \
3 +
/ \
2 *
/ \
2 2
并将其评估为
(+ 3 (+ 2 (* 2 2))
正如您所期望的那样,那是9。
LL解析器的特殊之处在于,对于受限制的语法,它们总是可以以有限的外观前向右前进。这使它们易于描述,易于解析;一些帕斯卡是最常见的语言之一。
您可能会看一下Wiki文章 最左边的推导.
不隶属于 StackOverflow