Вопросы по теме '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 просмотров

ifequal реализация грамматики конструкции
Я должен создать грамматику, которая распознает это: ifequal(exp1, exp2) statement1 smaller statement2 larger statement3 оператор1 выполняется, если два выражения равны, второе, если первое меньше, третье, если оно больше. Я...
37 просмотров
schedule 24.11.2023

Умножение путем сопоставления в yacc
Я пытаюсь реализовать грамматику, которая позволяет умножать путем сопоставления. Это для анализа полиномиальных входных данных для CAS. Насколько мне известно, он работает довольно хорошо, за исключением нескольких крайних случаев. Я выделил две...
59 просмотров