Типы в языках программирования 3MIT весна 2020

Материал из CSC Wiki
Перейти к:навигация, поиск

Лекции

Преподаватель: Москвин Денис Николаевич (λxy.dmoskvinxgmailycom)@.

Слайды

Лекция 1. Язык арифметических выражений 11.02.2020 (вт), 17:00-19:10, Таймс, ауд. 204

Лекция 2. Простые типы 12.02.2020 (ср), 17:00-19:10, Таймс, черные доски

Лекция 3. Простые расширения 18.02.2020 (вт), 17:00-19:10, Таймс, ауд. 204

Лекция 4. Обитаемость простых типов 19.02.2020 (ср), 17:00-19:10, Таймс, ауд. 408

Лекция 5. Нормализация для простой системы и типы-пересечения 25.02.2020 (вт), 17:00-19:10, Таймс, ауд. 204

Лекция 6. Подтипы 26.02.2020 (ср), 17:00-19:10, Таймс, ауд. 408

Лекция 7. Полиморфные типы: система λ2 (System F) 03.03.2020 (вт), 17:00-19:10, Таймс, ауд. 204

Практика. Полиморфные типы 04.03.2020 (ср), 17:00-19:10, Таймс, ауд. 408

Лекция 8. Экзистенциальные типы 10.03.2020 (вт), 17:00-19:10, Таймс, ауд. 204

Лекция 9. Операторы над типами: система λω 11.03.2020 (ср), 17:00-19:10, Таймс, ауд. 408

Лекция 10. Зависимые типы: система λP 17.03.2020 (вт), 17:00-19:10, ВШЭ, Кантемировская ул., 3A корпус 1, ауд. 4.3

Лекция 11. λ-куб и чистые системы типов 18.03.2020 (ср), 17:00-19:10, ВШЭ, Кантемировская ул., 3A корпус 1, ауд. 4.3

Лекция 12. Логические системы 18.03.2020 (ср)

Литература

Книги и статьи перечислены в убывающем порядке важности для изучения курса.

Пирс Б. Типы в языках программирования. — Лямбда пресс, Добросвет, 2012. — 656 c.

Hindley J. R. Basic simple type theory. — Cambridge University Press, 1997. — 186 pp.

Sorensen M. H., Urzyczyn P. Lectures on the Curry-Howard Isomorphism. — Elsevier, 2006. — 442 pp.

Barendregt H. Lambda calculi with types. — Handbook of logic in computer science (vol. 2), Oxford University Press, 1993. — 194 pp.

Barendregt H., Dekkers W., Statman R. Lambda Calculus with Types. — Cambridge University Press, 2013. — xxii + 833 pp.

Hindley J. R., Seldin J. P. Lambda-Calculus and Combinators, an Introduction. — Cambridge University Press, 2008. — xi + 345 pp.

Pierce B. C., ed. Advanced Topics in Types and Programming Languages. — MIT Press, 2005. — xiii + 574 pp. — xxii + 833 pp.

Барендрегт Х. Ламбда-исчисление, его синтаксис и семантика. М.:Мир. — 1985. — 606 с.

Nederpelt R, Geuvers H. Type Theory and Formal Proof: An Introduction. — Cambridge University Press, 2014. — 436 pp.

Практика

Преподаватель: Москвин Денис Николаевич (λxy.dmoskvinxgmailycom)@.

Текущая успеваемость

гугл-табличка успеваемости

Для образовательных программ с 10-бальной системой оценок проценты переводятся в баллы следующей функцией

score :: Int -> Int
score proc
  | proc < 66 = 0
  | proc > 96 = 10
  | otherwise = (proc - 66) `div` 3

Домашние задания на stepik.org

Для выполнения домашних заданий следует:

Если вы ранее не обучались на Stepik, зарегистрироваться на Stepik. Настоятельная просьба - указать идентификационные данные, позволяющие опознавать вас без сложных исследований.

Перейти по ссылке-приглашению на курс

Модули с текущим ДЗ будут становиться доступными по мере прохождения курса, дедлайны будут видны там же.