Детальная информация
Название | Языконезависимое форматирование текстов программ на основе сопоставления с образцом и синтаксических шаблонов // Научно-технические ведомости Санкт-Петербургского государственного политехнического университета. Сер.: Информатика. Телекоммуникации. Управление: научное издание. – 2015. – № 4 (224) |
---|---|
Авторы | Подкопаев Антон Викторович ; Коровянский Алексей Юрьевич ; Озерных Игорь Станиславович |
Организация | Санкт-Петербургский государственный университет ; Министерство образования и науки Российской Федерации |
Выходные сведения | Санкт-Петербург: Изд-во Политехн. ун-та, 2015 |
Коллекция | Общая коллекция |
Тематика | Вычислительная техника ; Программирование ЭВМ. Компьютерные программы. Программотехника ; форматирование ; форматирование программных текстов ; целевой код ; полиномиальное время ; стандарты кодирования ; комбинаторы |
УДК | 004.41/.42 |
ББК | 32.973-018 |
Тип документа | Статья, доклад |
Тип файла | |
Язык | Русский |
DOI | 10.5862/JCSTCS.224.4 |
Права доступа | Свободный доступ из сети Интернет (чтение, печать, копирование) |
Ключ записи | RU\SPSTU\edoc\30616 |
Дата создания записи | 18.01.2016 |
Рассмотрена проблема форматирования программных текстов. Предложен новый подход, позволяющий форматировать целевой код по образцу. Разработанное решение вычисляет оптимальное представление текста за полиномиальное время.
In paper we consider a code-formatting problem. A novel concept of declarative printers is introduced. These devices can perform formatting in accordance with the style of the rest of the source code. For this purpose, declarative formatters extract syntactic templates from the sample code and use them to construct a new representation of the input program. A proposed solution produces optimal program presentation in polynomial time. It is achieved by using polynomial-time pretty-printer combinators and introducing a partial order on text representations. We also present the results of evaluating the approach in the Java and Haskell languages. The development of a declarative printer for simple imperative language While is described. A comparison with modern IDEs code formatters is also presented.
Количество обращений: 676
За последние 30 дней: 22