Город: Тест Санкт-Петербург Новосибирск Казань Язык: Русский English

Принципы и интерпретация динамических языков программирования
Санкт-Петербург / весна 2015, посмотреть все семестры

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

В последнее время начали набирать популярность динамические языки программирования. Python и Ruby уже можно назвать мейнстримом. Основной фичей этих языков является метапрограммирование. Однако, ни Python ни Ruby не привнесли ничего нового в теорию языков программирования, а лишь переизобрели и популяризировали идеи рефлексии и метапрограммирования. Весь фундамент был заложен гораздо раньше в языках семейства Lisp. В курсе будет рассказано, почему Lisp занимает особое место среди динамических языков, будут продемонстрированы идеи, которые еще не нашли отражения в современных языках. Курс знакомит слушателей не только с идеями, но и с их программной реализацией. На примере кода интерпретаторов Lisp будет показано, с какими трудностями сталкиваются разработчики динамических языков. Изложение начнется с простых реализаций, занимающих страницу кода и дойдет до диалекта, обладающего наибольшими на сегодняшний день возможностями метапрограммирования. Особенностью курса является изложение теории реификации, которая была разработана автором на основе работ Brian Cantwell Smith. Соединив полученные знания со знаниями о синтаксическом анализе (эта тематика в курсе не рассматривается), слушатели смогут разработать самостоятельно реализацию языка уровня Python.

Дата и время Занятие Место Материалы
17 февраля
18:30–20:00
Введение в Lisp, Лекция ПОМИ РАН видео
03 марта
18:30–20:00
Универсализация синтаксиса, Лекция ПОМИ РАН видео
17 марта
18:30–20:00
Механизация вычислений, Лекция ПОМИ РАН видео
31 марта
18:30–20:00
Окружения, Лекция ПОМИ РАН Нет
14 апреля
18:30–20:00
Продолжения, Лекция ПОМИ РАН Нет
28 апреля
18:30–20:00
Реификаторы, Лекция ПОМИ РАН видео
12 мая
18:30–20:00
Продолжения и итераторы, Лекция ПОМИ РАН видео
19 мая
18:30–20:00
Пролегомены ко всякой будущей теории языков программирования, Лекция ПОМИ РАН Нет