• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Types and Programming Languages

2021/2022
Academic Year
RUS
Instruction in Russian
5
ECTS credits
Delivered at:
Department of Informatics
Course type:
Elective course
When:
3 year, 3, 4 module

Instructor

Программа дисциплины

Аннотация

Является дисциплиной по выбору. Данная дисциплина направлена на овладение навыками понимания и выведения систем типов различных языков программирования. Для освоения дисциплины студентам необходимы знания, полученные в результате изучения дисциплин «Формальные языки», «Функциональное программирование».
Цель освоения дисциплины

Цель освоения дисциплины

  • Формирование у студентов теоретических знаний и практических навыков понимания и выведения систем типов различных языков программирования.
Планируемые результаты обучения

Планируемые результаты обучения

  • Знает способы описания типов в языках программирования.
  • Умеет выводить типы для конкретного языка.
  • Имеет опыт применения математического аппарата и инструментальных средств, используемых в описании систем типов.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Раздел 1. Простые типы
  • Раздел 2. Подтипы и рекурсивные типы
  • Раздел 3. Полиморфные типы
  • Раздел 4. Системы типов высших порядков
Элементы контроля

Элементы контроля

  • неблокирующий Домашнее задание №1
    Домашнее задание №1 выдается студентам в одном варианте, задачи выдаются обучающимся после каждого практического занятия. Решения задач обучающиеся представляют в виде ответа на вопрос теста или кода на языке Haskell. Сроки представления решений составляют одну неделю с момента получения задания.
  • неблокирующий Домашнее задание №2
    Домашнее задание №2 выдается студентам в одном варианте, задачи выдаются обучающимся после каждого практического занятия. Решения задач обучающиеся представляют в виде ответа на вопрос теста или кода на языке Haskell. Сроки представления решений составляют одну неделю с момента получения задания.
  • неблокирующий Домашнее задание №3
    Домашнее задание №3 выдается студентам в одном варианте, задачи выдаются обучающимся после каждого практического занятия. Решения задач обучающиеся представляют в виде ответа на вопрос теста или кода на языке Haskell. Сроки представления решений составляют одну неделю с момента получения задания.
  • неблокирующий Домашнее задание №4
    Домашнее задание №4 выдается студентам в одном варианте, задачи выдаются обучающимся после каждого практического занятия. Решения задач обучающиеся представляют в виде ответа на вопрос теста или кода на языке Haskell. Сроки представления решений составляют одну неделю с момента получения задания.
  • неблокирующий Устный экзамен
    Устный экзамен проводится в форме ответов на вопросы экзаменационного билета. Экзаменационный билет представляет собой одну тему из перечня вопросов. На подготовку ответа выделяется 2,5 часа.
Промежуточная аттестация

Промежуточная аттестация

  • 2021/2022 учебный год 3 модуль
    0 * Домашнее задание №1 + 0 * Домашнее задание №2
  • 2021/2022 учебный год 4 модуль
    Преподаватель учитывает оценку за текущий контроль (домашние задания). Онакопленная= 0,25*Од/з1 + 0,25*Од/з2 + 0,25*Од/з3 + 0,25*Од/з4 Результирующая оценка за дисциплину рассчитывается следующим образом: ОРезультирующая= 0,5*Онакопленная+0,5* Оэкзамен На экзамене студенту не предоставляется возможность получить дополнительный балл для компенсации оценки за текущий контроль.
Список литературы

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

Рекомендуемая основная литература

  • Sørensen, M. H., & Urzyczyn, P. (2006). Lectures on the Curry-Howard Isomorphism (Vol. 1st ed). Amsterdam: Elsevier Science. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=196231

Рекомендуемая дополнительная литература

  • Pierce, B. C. (2002). Types and Programming Languages. Cambridge, Mass: The MIT Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=70966
  • Pierce, B. C. (2005). Advanced Topics in Types and Programming Languages. Cambridge, Mass: The MIT Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=138471