Пожалуйста, используйте этот идентификатор, чтобы цитировать или ссылаться на этот ресурс:
http://hdl.handle.net/11701/42927
Полная запись метаданных
Поле DC | Значение | Язык |
---|---|---|
dc.contributor.advisor | Лукьянова Ольга Евгеньевна | ru_RU |
dc.contributor.advisor | Lukanova Olga Evgenevna | en_GB |
dc.contributor.author | Мирошников Владислав Игоревич | ru_RU |
dc.contributor.author | Mirosnikov Vladislav Igorevic | en_GB |
dc.contributor.editor | Булычев Дмитрий Юрьевич | ru_RU |
dc.contributor.editor | Bulycev Dmitrij Urevic | en_GB |
dc.date.accessioned | 2023-07-26T12:45:13Z | - |
dc.date.available | 2023-07-26T12:45:13Z | - |
dc.date.issued | 2023 | |
dc.identifier.other | 080531 | en_GB |
dc.identifier.uri | http://hdl.handle.net/11701/42927 | - |
dc.description.abstract | В наши дни сложно представить разработку программного обеспечения без использования интегрированных сред разработки (IDE), предоставляющих большой спектр различной функциональности, например, технологии автодополнения, анализа кода и многое другое. При этом неотъемлемой частью в любой среде разработки является компонента кодовой модели, которая отвечает в том числе и за синтаксический анализ исходного кода языка, построение синтаксического и расширенного семантического дерева, а также различных индексов. Одной из ключевых и важных задач в данной подсистеме является задача вывода типов для выражений соответствующего языка, поскольку на его основе осуществляется разработка другой функциональности IDE, например, разрешения квалифицированных имен в коде или технологии автодополнения. При этом для IDE особенно важно выводить типы статически, так как анализ кода для пользователя должен происходить до запуска самой программы. В рамках данной работы предлагается реализация подсистемы статического вывода типов для языка Python, имеющего динамическую типизацию, а также ее внедрение в разрабатываемую Python IDE. Помимо этого, в данной работе предлагается алгоритм вывода типов с использованием теории унификации и его расширения в виде системы с роу-полиморфизмом, а также приводятся экспериментальные сравнения с существующими решениями, показывающие эффективность данного подхода. | ru_RU |
dc.description.abstract | Nowadays, it is hard to imagine software development process without using integrated development environments (IDEs) providing a wide range of different functionality, such as code completion technologies, code analysis, and much more. Moreover, an integral part of any development environment is a code model component, which is responsible for parsing the source code of a language, building a syntax and extended semantic tree, as well as various indices with semantic information. One of the key and important tasks in this subsystem is the type inference for expressions of the corresponding language. This is the basis for developing other IDE functionality, such as qualified name resolution in code or qualified code completion. It is especially significant for the IDE to infer types statically, since source code must be analyzed before launching the program. This paper proposes an implementation of a Static Type Inference Subsystem for the Python language, which has dynamic typing, and its integration in the Python IDE. In addition, this paper suggests an algorithm for type inference using unification theory and its extension in the form of a system with row-polymorphism, and provides experimental comparisons with existing solutions to show the effectiveness of this approach. | en_GB |
dc.language.iso | ru | |
dc.subject | Python | ru_RU |
dc.subject | статический вывод типов | ru_RU |
dc.subject | динамическая типизация | ru_RU |
dc.subject | утиная типизация | ru_RU |
dc.subject | роу-полиморфизм | ru_RU |
dc.subject | Python | en_GB |
dc.subject | Static Type Inference | en_GB |
dc.subject | Dynamic Typing | en_GB |
dc.subject | Duck Typing | en_GB |
dc.subject | Row Polymorphism | en_GB |
dc.title | Static type inference for Python in IDE | en_GB |
dc.title.alternative | Статический вывод типов для языка Python в интегрированной среде разработки | ru_RU |
Располагается в коллекциях: | BACHELOR STUDIES |
Файлы этого ресурса:
Файл | Описание | Размер | Формат | |
---|---|---|---|---|
Staticeskij_vyvod_tipov_dla_azyka_Python_v_integrirovannoj_srede_razrabotki.pdf | Article | 925,1 kB | Adobe PDF | Просмотреть/Открыть |
reviewSV_miroshnikov.pdf | ReviewSV | 77,26 kB | Adobe PDF | Просмотреть/Открыть |
reviewSV_st080531_Mirosnikov_Vladislav_Igorevic_(supervisor)(Ru).txt | ReviewSV | 5,43 kB | Text | Просмотреть/Открыть |
Все ресурсы в архиве электронных ресурсов защищены авторским правом, все права сохранены.