Генерация декларативных принтеров по грамматике в форме Бэкуса-Наура

Одним из декларативных подходов к заданию средств форматирования кода (принтеров) является метод синтаксических шаблонов, которые являются примерами форматирования синтаксических конструкций целевого языка. Для извлечения шаблонов из предоставленного образца кодовой базы на целевом языке с желаемым стилем форматирования используется синтаксический анализатор. Недостатком существующей системы является то, что для получения принтера нового целевого языка необходимо вручную реализовать языкозависимую прослойку между ядром системы и представлением синтаксического дерева, получаемого в результате работы анализатора. Этот процесс трудоёмок и требует глубоких знаний о системе. Данная работа посвящена автоматическому получению такой прослойки для случая, когда синтаксический анализатор генерируется по грамматике языка в форме Бэкуса-Наура. Реализация выполнена в виде расширения плагина Grammar-Kit для среды разработки IntelliJ IDEA, позволяющего по грамматике в форме Бэкуса-Наура получить и синтаксический анализатор, и принтер для целевого языка. В рамках апробации разработанная система была использована для получения принтеров по грамматикам учебного языка While и языка Erlang.

Математика
Дипломы

Вуз: Санкт-Петербургский государственный университет (СПбГУ)

ID: 587d36565f1be77c40d58d08
UUID: cc63e8b6-1951-422e-957f-f34536ffa02f
Язык: Русский
Опубликовано: больше 7 лет назад
Просмотры: 7

Озерных Игорь Станиславович

Источник: Санкт-Петербургский государственный университет


0

Комментировать 0

Рецензировать 0

Скачать - 342956 bytes


Поделиться работой
Current View

Рецензии:

  Авторизуйтесь, чтобы добавить рецензию

- у работы пока нет рецензий -

Для лиц старше 18 лет