EISSN 1562-5419
Языки: ru · en

Статья: РАЗРАБОТКА ЛЕГКОВЕСНЫХ ПАРСЕРОВ С РАЗНОЙ ДЕТАЛИЗАЦИЕЙ ЯЗЫКА GO (2024)

Читать онлайн

Рассмотрен подход к созданию семейства легковесных грамматик для языка Go со специальным символом Any, обозначающим пропускаемую часть программы [1]. Дано формальное определение более детализированной грамма-тики, приведены примеры увеличения детализации правил грамматики. Проведен анализ эффективности семейства построенных легковесных парсеров по па-мяти и времени работы на семи промышленных репозиториях. Показано, что увеличение детализации грамматики не ведет к существенному росту потребления ресурсов парсером и незначительно колеблется в зависимости от типа репозитория и стиля написания на Go. Кроме того, указаны преимущества использования легковесных грамматик с символом Any по сравнению с полными грамматиками. Представлен пример использования легковесной грамматики для определения сложности кода. Полученные результаты могут быть также применены для оценки доли парсера в общем потреблении ресурсов, например, в задаче при-вязки к коду и разметки проекта.

Ключевые фразы: легковесная грамматика, легковесный парсер, ЯЗЫК GO, грамматика go, грамматика с символом any
Автор (ы): ДРОЗДОВ Дмитрий Сергеевич, МИХАЛКОВИЧ Станислав Станиславович
Журнал: ЭЛЕКТРОННЫЕ БИБЛИОТЕКИ

Идентификаторы и классификаторы

УДК
004.423. Синтаксис и семантика программ
Для цитирования:
ДРОЗДОВ Д. С., МИХАЛКОВИЧ С. С. РАЗРАБОТКА ЛЕГКОВЕСНЫХ ПАРСЕРОВ С РАЗНОЙ ДЕТАЛИЗАЦИЕЙ ЯЗЫКА GO // ЭЛЕКТРОННЫЕ БИБЛИОТЕКИ. 2024. № 6, ТОМ 27
Текстовый фрагмент статьи