RUS  ENG
Полная версия
ЖУРНАЛЫ // Труды института системного программирования РАН // Архив

Труды ИСП РАН, 2023, том 35, выпуск 3, страницы 33–46 (Mi tisp784)

Writable PSI generator for a multi-Language IDE platform

[Генератор дерева PSI с возможностью записи для мультиязыковой платформы IDE]

A. S. Bozhnyuka, A. A. Zakharovb, N. V. Tropina, M. V. Volkova

a Saint Petersburg State University
b Tula State University

Аннотация: Любая современная интегрированная среда разработки (IDE) должна предоставлять разработчикам программного обеспечения сервисы для трансформации кода. Такие сервисы могут использоваться как для рефакторинга программы с целью улучшения её качества, так и для быстрого исправления синтаксических ошибок в исходном коде. Данная работа предлагает технологию разработки подсистемы, которая позволяет создавать такие сервисы для различных IDEs и языков программирования. Предложен способ трансформации дерева Program Structure Interface (PSI) – специальной структуры данных, предоставляющей API для разработки IDE-сервисов. Помимо этого, предложен способ генерации типов для PSI сообразно синтаксису поддерживаемого языка программирования. Подход разработан для мультиязыковой платформы, создаваемой в рамках крупной технологической компании. На его основе были разработаны сервисы по модификации исходного кода для двух сред разработки – Java IDE и Python IDE.

Ключевые слова: Интегрированная среда разработки, IDE, средства разработки, PSI, программный интерфейс, рефакторинг, исправление кода

Язык публикации: английский

DOI: 10.15514/ISPRAS-2023-35(3)-2



© МИАН, 2024