Я готовлюсь к завтрашнему экзамену и пересматриваю прошлогодний.
В тесте была грамматика.
Expression -> Foo "+" Bar "end"
Foo -> [a-z0-9]+ | Expression
Bar -> Expression Foo | a*b*c+
Я пытался и часами изучал, как это сделать, но не могу понять.
Я пытался заменить вещи на epsilion и тому подобное, но не чувствую себя уверенно.
Я думаю, что мне нужно создать Foo' и Bar', а затем просто добавить правила epsilon, но я не уверен.
Может ли кто-нибудь показать мне (просто) _ как изменить его на грамматику, поддерживающую LL (1)
заранее спасибо