|
Вестник Астраханского государственного технического университета. Серия: Управление, вычислительная техника и информатика, 2013, номер 2, страницы 66–74
(Mi vagtu273)
|
|
|
|
КОМПЬЮТЕРНОЕ ОБЕСПЕЧЕНИЕ И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА
Получение типов данных в языках с динамической типизацией для статического анализа исходного кода с помощью универсального классового представления
М. В. Зубов, А. Н. Пустыгин, Е. В. Старцев Челябинский государственный университет
Аннотация:
Предлагается подход, позволяющий получить сведения о типах полей классов для объектно-ориентированных языков программирования с динамической типизацией, где эти сведения явно не указаны. В качестве целевого языка выбран Python. Это необходимо для расширения универсального классового промежуточного представления исходного кода. Используя данные о типах, можно будет выполнять более эффективный анализ, например получение связей агрегирования между классами. Для получения типов полей предлагается подход «утиной типизации», использующийся в Python во время исполнения. Для обоснования этого подхода предложена математическая модель, которая описывает типизацию, не накладывая ограничений на конкретный алгоритм поиска «кандидатов» в типы исследуемых полей. Предложена методика тестирования алгоритма на основе динамического анализа, позволяющая оценить его эффективность. Реализованный алгоритм вместе с методикой были проверены на ведущих крупных Python-проектах с открытым исходным кодом.
Ключевые слова:
статический анализ, динамическая типизация, динамический анализ, объектно-ориентированное программирование, Python.
Поступила в редакцию: 03.04.2013
Образец цитирования:
М. В. Зубов, А. Н. Пустыгин, Е. В. Старцев, “Получение типов данных в языках с динамической типизацией для статического анализа исходного кода с помощью универсального классового представления”, Вестн. Астрахан. гос. техн. ун-та. Сер. управление, вычисл. техн. информ., 2013, № 2, 66–74
Образцы ссылок на эту страницу:
https://www.mathnet.ru/rus/vagtu273 https://www.mathnet.ru/rus/vagtu/y2013/i2/p66
|
Статистика просмотров: |
Страница аннотации: | 220 | PDF полного текста: | 156 | Список литературы: | 114 | Первая страница: | 1 |
|