Бакалавриат
2021/2022
Типы в языках программирования
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс по выбору (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Кто читает:
Департамент информатики
Когда читается:
3-й курс, 3, 4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Москвин Денис Николаевич
Язык:
русский
Кредиты:
5
Контактные часы:
38
Программа дисциплины
Аннотация
Является дисциплиной по выбору. Данная дисциплина направлена на овладение навыками понимания и выведения систем типов различных языков программирования. Для освоения дисциплины студентам необходимы знания, полученные в результате изучения дисциплин «Формальные языки», «Функциональное программирование».
Цель освоения дисциплины
- Формирование у студентов теоретических знаний и практических навыков понимания и выведения систем типов различных языков программирования.
Планируемые результаты обучения
- Знает способы описания типов в языках программирования.
- Умеет выводить типы для конкретного языка.
- Имеет опыт применения математического аппарата и инструментальных средств, используемых в описании систем типов.
Содержание учебной дисциплины
- Раздел 1. Простые типы
- Раздел 2. Подтипы и рекурсивные типы
- Раздел 3. Полиморфные типы
- Раздел 4. Системы типов высших порядков
Элементы контроля
- Домашнее задание №1Домашнее задание №1 выдается студентам в одном варианте, задачи выдаются обучающимся после каждого практического занятия. Решения задач обучающиеся представляют в виде ответа на вопрос теста или кода на языке Haskell. Сроки представления решений составляют одну неделю с момента получения задания.
- Домашнее задание №2Домашнее задание №2 выдается студентам в одном варианте, задачи выдаются обучающимся после каждого практического занятия. Решения задач обучающиеся представляют в виде ответа на вопрос теста или кода на языке Haskell. Сроки представления решений составляют одну неделю с момента получения задания.
- Домашнее задание №3Домашнее задание №3 выдается студентам в одном варианте, задачи выдаются обучающимся после каждого практического занятия. Решения задач обучающиеся представляют в виде ответа на вопрос теста или кода на языке Haskell. Сроки представления решений составляют одну неделю с момента получения задания.
- Домашнее задание №4Домашнее задание №4 выдается студентам в одном варианте, задачи выдаются обучающимся после каждого практического занятия. Решения задач обучающиеся представляют в виде ответа на вопрос теста или кода на языке Haskell. Сроки представления решений составляют одну неделю с момента получения задания.
- Устный экзаменУстный экзамен проводится в форме ответов на вопросы экзаменационного билета. Экзаменационный билет представляет собой одну тему из перечня вопросов. На подготовку ответа выделяется 2,5 часа.
Промежуточная аттестация
- 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