Труды института системного программирования РАН
RUS  ENG    ЖУРНАЛЫ   ПЕРСОНАЛИИ   ОРГАНИЗАЦИИ   КОНФЕРЕНЦИИ   СЕМИНАРЫ   ВИДЕОТЕКА   ПАКЕТ AMSBIB  
Общая информация
Последний выпуск
Архив

Поиск публикаций
Поиск ссылок

RSS
Последний выпуск
Текущие выпуски
Архивные выпуски
Что такое RSS



Труды ИСП РАН:
Год:
Том:
Выпуск:
Страница:
Найти






Персональный вход:
Логин:
Пароль:
Запомнить пароль
Войти
Забыли пароль?
Регистрация


Труды института системного программирования РАН, 2015, том 27, выпуск 3, страницы 9–28
DOI: https://doi.org/10.15514/ISPRAS-2015-27(3)-1
(Mi tisp133)
 

FRIS language service for extended Fortran support in Microsoft Visual Studio
[Языковой сервис FRIS для расширенной поддержки Fortran в Microsoft Visual Studio]

I. S. Ratkevich

Russian Federal Nuclear Center – All-Russian Scientific Research Institute of Experimental Physics (RFNC – VNIIEF)
Список литературы:
Аннотация: В данной статье рассматриваются вопросы построения языкового сервиса для расширенной поддержки языка программирования Fortran в интегрированной среде разработки Microsoft Visual Studio. Предлагается модель и общий подход к построению языковых сервисов.
Предлагаемая общая модель языкового сервиса состоит из пяти блоков: блока интеграции со средой разработки; блока анализа; блока хранения распознанных элементов; блока сериализации/десериализации элементов; блока модели представления элементов.
Блок интеграции с IDE соединяет языковой сервис с базовой инфраструктурой IDE. Он отвечает за подписку языкового сервиса на события редактирования текста пользователем в редакторе и за соответствующие отклики.
Блок анализа отвечает за проведение лексического, синтаксического и семантического анализа. Он собирает всю необходимую информацию об элементах языка программирования и помещает их в блок хранения распознанных элементов. Второй задачей данного блока является предоставление информации для подсветки синтаксиса редактируемого текста программы.
Блок хранения распознанных элементов является своеобразной базой данных всех элементов, необходимых для работы языкового сервиса. В общем случае он является разновидностью таблицы символов. Наполнение блока хранения может вестись из двух источников: из блока анализа, как результат разбора файлов с текстами программ, и из блока сериализации/десериализации элементов, как результат десериализации из ранее существующего специализированного описания программы, в случае использования модели API (Application Programming Interface) для произвольных библиотек.
Блок сериализации/десериализации элементов выполняет две функции. Во-первых, он позволяет сохранять содержимое программных проектов в виде XML файлов описания API и комментариев документирования к ним. Во-вторых, он позволяет восстанавливать содержимое программных проектов из их XML моделей.
Блок модели представления элементов является связующим звеном, своеобразным адаптером, элементов блока хранения, к тому виду, который необходим для использования в блоке интеграции с IDE. Так распознанные элементы могут содержать некоторую информацию, которая не требуется функциям технологии IntelliSense, или наоборот, не содержать нужной информации. В модели представления элементов организуются типы данных – обёртки для элементов блока хранения, соответствующие требованиям блока интеграции с IDE. Также здесь реализуются всевозможные функции выборки и поиска необходимой информации.
Доказательство работоспособности предложенной обобщённой модели приводится на примере разработанного автором языкового сервиса FRIS. Изложенный материал может быть в равной мере использован для построения языковых сервисов, как для других языков программирования, так и для других средств разработки.
Ключевые слова: FRIS, Fortran Intelligent Solutions, Fortran, Visual Studio Extensibility, Language Service, Visual Studio.
Реферативные базы данных:
Тип публикации: Статья
Язык публикации: английский
Образец цитирования: I. S. Ratkevich, “FRIS language service for extended Fortran support in Microsoft Visual Studio”, Труды ИСП РАН, 27:3 (2015), 9–28
Цитирование в формате AMSBIB
\RBibitem{Rat15}
\by I.~S.~Ratkevich
\paper FRIS language service for extended Fortran support in Microsoft Visual Studio
\jour Труды ИСП РАН
\yr 2015
\vol 27
\issue 3
\pages 9--28
\mathnet{http://mi.mathnet.ru/tisp133}
\crossref{https://doi.org/10.15514/ISPRAS-2015-27(3)-1}
\elib{https://elibrary.ru/item.asp?id=23832927}
Образцы ссылок на эту страницу:
  • https://www.mathnet.ru/rus/tisp133
  • https://www.mathnet.ru/rus/tisp/v27/i3/p9
  • Citing articles in Google Scholar: Russian citations, English citations
    Related articles in Google Scholar: Russian articles, English articles
    Труды института системного программирования РАН
     
      Обратная связь:
     Пользовательское соглашение  Регистрация посетителей портала  Логотипы © Математический институт им. В. А. Стеклова РАН, 2025