Вопросы по теме 'lr1'
Парсер LR1 и Эпсилон
Я пытаюсь понять, как работают синтаксические анализаторы LR1, но столкнулся со странной проблемой: что, если грамматика содержит эпсилоны? Например: если у меня есть грамматика:
S -> A
A -> a A | B
B -> a
Понятно, как начать:
S...
4918 просмотров
schedule
26.04.2023
Где я могу найти _простую_, легкую для понимания реализацию генератора парсеров LR(1)?
Где я могу найти простую (насколько это возможно, но не проще!) реализацию генератора парсеров LR(1)?
Мне не нужна производительность, мне нужна только возможность генерировать состояния LR(1) (наборы элементов). Мне подошли бы C++, C#, Java и...
2739 просмотров
schedule
27.02.2023
Этот генератор парсера говорит, что эта грамматика не LR(1), но у меня есть сомнения
Я написал генератор синтаксического анализатора на Java, после нескольких ударов (ранняя версия, например, не особенно любила левую рекурсию), мне удалось заставить его работать с некоторыми простыми грамматиками (поэтому я могу вручную проверить...
95 просмотров
schedule
18.04.2022
Bison: конфликты shift-reduce, даже если директива %left %right
Я знаю, что большинство конфликтов сдвига/уменьшения можно разрешить с помощью директив %left или %right. Но даже при этом у меня возникают конфликты. Ниже приведен блок моей грамматики:
expression: variable '=' expression
|...
63 просмотров
schedule
09.05.2022
Может ли грамматика быть проанализирована с помощью LL(1), но не с помощью LR(1)?
В качестве домашнего задания мне дали следующую грамматику:
S: D
D: AbBb | BaAb
A: ε
B: ε
Я вычислил это с помощью LL (1) просто отлично. Первые наборы были:
S: a, b
D: a,b
A: ε
B: ε
Были следующие наборы:
S: $
D: $
A: b
B:...
290 просмотров
schedule
12.04.2023
Вычисление наборов FIRST & FOLLOW грамматики
У меня есть следующая грамматика:
S -> aXab
S -> Y
X -> bYa
X -> epsilon
Y -> Sc
Я вычислил первый и последующие наборы для этой грамматики, и я хотел бы знать, правильно ли это. Вот мое решение:
First Sets:
S -> {a}
X...
38 просмотров
schedule
16.08.2022