Пожалуйста, используйте этот идентификатор, чтобы цитировать или ссылаться на этот ресурс: http://hdl.handle.net/11701/4202
Полная запись метаданных
Поле DCЗначениеЯзык
dc.contributor.advisorБулычев Дмитрий Юрьевичru_RU
dc.contributor.authorОзерных Игорь Станиславовичru_RU
dc.contributor.authorOzernykh Igoren_GB
dc.contributor.editorКандидат физико-математических наук Д.Ю.Булычевru_RU
dc.contributor.editorCandidate of Physics and Mathematics D.Y.Boulytcheven_GB
dc.date.accessioned2016-10-10T02:12:44Z-
dc.date.available2016-10-10T02:12:44Z-
dc.date.issued2016
dc.identifier.other011628en_GB
dc.identifier.urihttp://hdl.handle.net/11701/4202-
dc.description.abstractОдним из декларативных подходов к заданию средств форматирования кода (принтеров) является метод синтаксических шаблонов, которые являются примерами форматирования синтаксических конструкций целевого языка. Для извлечения шаблонов из предоставленного образца кодовой базы на целевом языке с желаемым стилем форматирования используется синтаксический анализатор. Недостатком существующей системы является то, что для получения принтера нового целевого языка необходимо вручную реализовать языкозависимую прослойку между ядром системы и представлением синтаксического дерева, получаемого в результате работы анализатора. Этот процесс трудоёмок и требует глубоких знаний о системе. Данная работа посвящена автоматическому получению такой прослойки для случая, когда синтаксический анализатор генерируется по грамматике языка в форме Бэкуса-Наура. Реализация выполнена в виде расширения плагина Grammar-Kit для среды разработки IntelliJ IDEA, позволяющего по грамматике в форме Бэкуса-Наура получить и синтаксический анализатор, и принтер для целевого языка. В рамках апробации разработанная система была использована для получения принтеров по грамматикам учебного языка While и языка Erlang.ru_RU
dc.description.abstractOne of the declarative approaches to development of code formatting tools (prettyprinters) is a method of syntactic templates, which are examples of formatting syntactic constructions of the target language. To extract templates from the sample of a codebase with desired formatting a parser is used. The drawback of the existing system is the necessity of manual implementation of the language-aware interlayer between the core system and the representation of a syntactic tree. This may become a significant undertaking. This degree paper addresses the issue of an automatic obtaining of that interlayer in case of parser is generated in grammar in the Backus-Naur form. Implementation is done as an extension of Grammar-Kit plugin for IntelliJ IDEA IDE, which is used for both parser generation and declarative code formatting tool generation in grammar in the Backus-Naur form. As part of the approbation the developed system was used for printer generation for While language and Erlang language.en_GB
dc.language.isoru
dc.subjectдекларативное форматированиеru_RU
dc.subjectдекларативные принтерыru_RU
dc.subjectгенерация принтеровru_RU
dc.subjectБНФ-грамматикаru_RU
dc.subjectdeclarative formattingen_GB
dc.subjectprettyprintersen_GB
dc.subjectprinter generationen_GB
dc.subjectBNF grammaren_GB
dc.titleDeclarative printer generation in grammar in the Backus-Naur formen_GB
dc.title.alternativeГенерация декларативных принтеров по грамматике в форме Бэкуса-Наураru_RU
Располагается в коллекциях:BACHELOR STUDIES



Все ресурсы в архиве электронных ресурсов защищены авторским правом, все права сохранены.