26-29 октября 2010 года, Красноярск

Мукумова У.Р.  

Лексический анализатор и структуризатор текста программы

Разработанный подход к переструктуризации текстов программ в соответствии с задаваемой спецификацией (шаблонов) основан на идеях моделей программ с множеством их внешних форм представления [1] и реализован в виде скрипта на языке Lua.
Лексический анализатор и структуризатор (ЛАС) включает компоненты:

  • выделения структурных блоков (циклов и ветвлений);
  • выделения заголовков и описаний функций исследуемого модуля;
  • выделения арифметических и логических выражений с формированием последовательности их вычисления;
  • выделения простых и строчных комментариев;
  • выделения простых и многострочных текстовых констант;
  • формирования текста программы нового вида (той же логики) на основе параметров задаваемой спецификации (отступы блоков, оформление комментариев, вида представления арифметических и логических выражений и др.);
  • создания списков связей по вызываемым внешним функциям и используемых внешних объектов для передачи их специальному компоненту по формированию графов [2].

Апробация программной версии ЛАС проведена на специализированной библиотеке поддержки решения задач долгосрочного прогнозирования гидроэнергетического потенциала в ИСЭМ СО РАН, написанной на языке Lua, что позволило повысить надежность и наглядность отдельных её модулей.
В настоящее время проводятся исследования по его развитию для анализа и структуризации текстов некоторых других языков программирования (C/C++, Pascal, Fortran и др.).

Список литературы

  1. Абасов Н.В. Основы универсальной среды программирования ЗИРУС // Вестник ИрГТУ. - 2006. - №2(26).-С.62-68.
  2. Абасов Н.В, Миронов В.О. Применение графов для анализа и реструктуризации исходных текстов программ // Тр. XIV Байкальской Всерос. конф. "Информационные и математические технологии в науке и управлении". Т.3. -Иркутск: ИСЭМ СО РАН, 2009. С. 173-178.


К списку докладов