Вопросы по теме 'shift-reduce-conflict'
сдвиг/уменьшение конфликта с SableCC
У меня первый опыт работы с SableCC и определением грамматики. У меня есть следующая грамматика (часть ее):
query =
{atop} attroperator |
{query_par} l_par query r_par |
{query_and} [q1]:query logic_and [q2]:query...
1551 просмотров
schedule
19.12.2023
Как решить грамматическую неоднозначность LR(1) между троичными выражениями (a ? b : c) и, возможно, выражениями (a?)?
Я создал грамматику, урезанная версия которой воспроизводится ниже:
(0) exp1: ternary;
(1) exp1: exp2;
(2) ternary: exp2 "?" exp1 ":" exp1;
(3) exp2: exp2 "+" exp3;
(4) exp2: exp3;
(5) exp3: maybe;
(6) exp3: "1";
(7) maybe: exp3 "?";
Я...
1306 просмотров
schedule
10.01.2024
Почему мой тернарный оператор вызывает конфликт сдвига-уменьшения?
Ниже моя грамматика:
arithmetic_expression : expression + expression
| expression - expression
expression : constant
| ID
| arithmetic_expression
|...
1443 просмотров
schedule
07.05.2024
ifequal реализация грамматики конструкции
Я должен создать грамматику, которая распознает это:
ifequal(exp1, exp2)
statement1
smaller
statement2
larger
statement3
оператор1 выполняется, если два выражения равны, второе, если первое меньше, третье, если оно больше. Я...
37 просмотров
schedule
24.11.2023
Умножение путем сопоставления в yacc
Я пытаюсь реализовать грамматику, которая позволяет умножать путем сопоставления. Это для анализа полиномиальных входных данных для CAS.
Насколько мне известно, он работает довольно хорошо, за исключением нескольких крайних случаев. Я выделил две...
59 просмотров
schedule
26.05.2024