LR(1) - Как вычислить Lookaheads
У меня проблемы с пониманием того, как вычислить прогноз.
Допустим, у меня есть это расширение грамматики:
S'-> S
S -> L=R | R
L -> *R | i
R -> L
Я написал State 0 так:
S'-> .S, {$}
S -> .L=R, {$}
S -> .R, {$}
L -> .*R, {=,$}
L -> .i, {=,$}
R -> .L {=,$}
Используя много эмулятора синтаксического анализа, я вижу, что все калькуляторы говорят:
R -> .L {$}
Зачем? Не может ли R следовать за "="?