Создание парсера простого языка (МОК) — различия между версиями
Материал из Вики ИТ мехмата ЮФУ
Admin (обсуждение | вклад) (Новая страница: «Из материалов по курсу «Методы построения компиляторов»: [[Создание синтаксического ан…») |
Admin (обсуждение | вклад) (→Задания) |
||
Строка 25: | Строка 25: | ||
*Реализовать узел дерева BinaryNode с конструктором BinaryNode(leftoperand,rightoperand,operation). Дополнить грамматику семантическими действиями, связанными с разбором выражений | *Реализовать узел дерева BinaryNode с конструктором BinaryNode(leftoperand,rightoperand,operation). Дополнить грамматику семантическими действиями, связанными с разбором выражений | ||
*Реализовать парсер аналогичного языка в C-грамматике | *Реализовать парсер аналогичного языка в C-грамматике | ||
+ | *Реализовать выражения вида x < 0. Для этого: | ||
+ | ** Сделать исправления в грамматике выражений (операции отношения - самые низкоприоритетные) | ||
+ | ** Сделать типы int и bool, описание переменных этих типов | ||
+ | ** Сделать метод определения типа у выражения |
Версия 11:09, 7 сентября 2014
Из материалов по курсу «Методы построения компиляторов»:
Создание синтаксического анализатора с помощью программы GPPG
Построение синтаксического дерева программы
Задания
- Дополнить грамматику языка грамматикой выражений
expr : T | expr + T | expr - T ; T : F | T * F | T / F ; F : ident | INUM | ( expr ) ;
- Реализовать узел дерева BinaryNode с конструктором BinaryNode(leftoperand,rightoperand,operation). Дополнить грамматику семантическими действиями, связанными с разбором выражений
- Реализовать парсер аналогичного языка в C-грамматике
- Реализовать выражения вида x < 0. Для этого:
- Сделать исправления в грамматике выражений (операции отношения - самые низкоприоритетные)
- Сделать типы int и bool, описание переменных этих типов
- Сделать метод определения типа у выражения