Details

Title Разработка параметризированных типов с переменным набором параметров для языка Kotlin: выпускная квалификационная работа магистра: 09.04.01 - Информатика и вычислительная техника ; 09.04.01_15 - Технологии проектирования системного и прикладного программного обеспечения
Creators Кирпиченков Павел Станиславович
Scientific adviser Ицыксон Владимир Михайлович
Other creators Новопашенный Андрей Гелиевич
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Imprint Санкт-Петербург, 2019
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects Программирования языки ; параметрический полиморфизм ; Kotlin ; переменная арность
UDC 004.438(043.3)
Document type Master graduation qualification work
File type PDF
Language Russian
Level of education Master
Speciality code (FGOS) 09.04.01
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
Links Отзыв руководителя ; Рецензия ; Отчет о проверке на объем и корректность внешних заимствований
DOI 10.18720/SPBPU/3/2019/vr/vr19-529
Rights Доступ по паролю из сети Интернет (чтение, печать, копирование)
Record key ru\spstu\vkr\2483
Record create date 9/26/2019

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Action 'Download' will be available if you login or access site from another network

Group Anonymous
Network Internet

Параметрический полиморфизм широко распространен в современных языках программирования, но лишь некоторые из них позволяют работать с переменным набором типовых параметров. В работе дается классификация видов полиморфизма и рассматриваются существующие языки программирования с поддержкой типовых параметров переменной размерности. Предлагается расширение синтаксиса для языка Kotlin, реализованное в прототипной версии компилятора. По результатам тестирования прототипа дается оценка возможностей и ограничений предложенного подхода.

Parametric polymorphism is widely present in modern programming languages, but only some of them support type parameters of variable arity. In this work we give a classification of polymorphism and make a review of how existing languages deal with variably-sized type parameters. We then suggest a syntax extension for Kotlin, that is implemented in a compiler prototype. We also give our evaluation of the new approach based on the testing results.

Network User group Action
ILC SPbPU Local Network All
Read Print Download
Internet Authorized users SPbPU
Read Print Download
Internet Anonymous
  • ВВЕДЕНИЕ
  • 1. Полиморфизм в языках программирования
    • 1.1. Классификация видов полиморфизма
    • 1.2. Предпосылки для использования параметрического полиморфизма с переменным набором параметров
    • 1.3. Параметрический полиморфизм в С++
    • 1.4. Параметрический полиморфизм в D
    • 1.5. Параметрический полиморфизм в функциональных языках программирования
  • 2. Цели и задачи работы
    • 2.1. Цель работы
    • 2.2. Задачи работы
  • 3. Разработка синтаксиса переменного набора типовых параметров
    • 3.1. Особенности языка Kotlin
    • 3.2. Дизайн синтаксиса
  • 4. Разработка прототипа компилятора
    • 4.1. Архитектура компилятора
    • 4.2. Поддержка типизации в компиляторе Kotlin
    • 4.3. Изменения в синтаксическом разборе
    • 4.4. Изменения в статическом анализе
      • 4.4.1. Проверка типового параметра
      • 4.4.2. Вывод и хранение типовых аргументов
      • 4.4.3. Работа с индексированными типами
  • 5. Тестирование и оценка результатов
    • 5.1. Тестирование
    • 5.2. Оценка результатов и дальнейшее развитие
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
  • ПРИЛОЖЕНИЕ. ЛИСТИНГИ

Access count: 60 
Last 30 days: 0

Detailed usage statistics