Вопросы по теме 'lemon'
Простая грамматика для Lemon LALR Parser
Я застрял с этим с некоторого времени. Я хочу разобрать что-то простое, например:
НРАВИТСЯ: слово1 слово2 .. словоN НЕНАВИДИТ: слово1 слово2 .. словоN
Я использую Lemon+Flex. На данный момент моя грамматика выглядит примерно так:
%left...
1120 просмотров
schedule
27.03.2022
Правильно ли Lemon обрабатывает приоритет nonassoc?
Я чувствую, что генератор синтаксического анализатора Lemon делает это неправильно с приоритетом nonassoc. У меня есть упрощенная грамматика, которая демонстрирует проблемы, которые я вижу.
%nonassoc EQ.
%left PLUS.
stmt ::= expr.
expr ::= expr...
128 просмотров
schedule
04.04.2022
Генерация парсера JavaScript SQL для SQLite3 (с Lemon? ANTLR3?)
В течение последних нескольких недель я погружался в прекрасный мир разбора операторов SQL во что-то управляемое только для того, чтобы узнать, что мне, вероятно, понадобится полный лексер/парсер для правильной обработки всех разрешенных...
1485 просмотров
schedule
09.08.2022
Использование правил midaction в Lemon для интерпретации выражения let
Я пытаюсь написать «игрушечный» интерпретатор, используя Flex + Lemon, который поддерживает очень простой синтаксис «let», где переменная X временно привязана к выражению. Например, «letx 3 + 4 in x + 8» должно оцениваться как 15.
По сути, я бы...
101 просмотров
schedule
11.08.2022
Восстановление токенов ошибок при разборе (Lemon)
Я использую Lemon в качестве генератора парсеров, его обработка ошибок такая же, как у yacc и bison, если вы не знаете Lemon.
В Lemon есть возможность определить токен ошибки в наборе правил, чтобы отлавливать ошибки синтаксического анализа. По...
1185 просмотров
schedule
24.01.2023
Shift/reduce конфликт с вызовом выражения
Когда я пытаюсь скомпилировать этот простой синтаксический анализатор с помощью Lemon, у меня возникает конфликт, но я не вижу, какое правило неверно. Конфликт исчезнет, если я удалю двоичное выражение или выражение вызова.
%left Add.
program...
200 просмотров
schedule
23.04.2023
Решение конфликтов синтаксического анализа в крошечной грамматике Lemon
Я пытаюсь изучить основы генератора синтаксического анализатора Lemon , но быстро застрял.
Вот небольшая грамматика:
%right PLUS_PLUS.
%left DOT.
program ::= expr.
member_expr ::= expr DOT IDENTIFIER.
lhs_expr ::= member_expr.
expr ::=...
530 просмотров
schedule
21.05.2023