Введение в функциональное программирование на Common Lisp
date_range Начало 14 января 2020 г.
event_note Завершение 3 марта 2020 г.
list 5 последовательности
assignment Уровень : Начальный
chat_bubble_outline Язык : русский
card_giftcard 160 баллы
Мнение сообщества
-
starstarstarstarstar
0 отзывы

Важная информация

credit_card Обучение платное
verified_user Сертификация платная
timer 20 час(ы) курса

Резюме

Сегодня функциональное программирование становится все более популярным. Функциональные языки и заложенные в них концепции активно применяются в разработке программного обеспечения, работающего под высокой нагрузкой и предъявляющего повышенные требования к безопасности и масштабируемости.
Многие приемы функционального программирования можно применять и в традиционных процедурных и объектно-ориентированных языках. Особенно учитывая, что такие языки, как Java, C++, С#, Python, со временем приобретают все больше и больше возможностей, характерных для функциональных языков.
В курсе функциональный подход к написанию программ иллюстрируется с помощью Lisp — одного из самых знаковых для функционального программирования языков.
По окончании курса вы сможете применять базовые концепции функционального программирования при написании программ на любых языках, а также получите опыт использования языка Lisp для решения практических задач.

  • Основы языка Lisp и умение использовать его для решения практических задач.
  • Базовые сведения о функциональной парадигме программирования и способах её применения.
  • Некоторые часто используемые алгоритмы и структуры данных

more_horiz Подробнее
more_horiz Свернуть
report_problem

Специальные требования

Для успешного освоения курса не требуется никаких специальных знаний, кроме знаний уровня школьной информатики. Для успешного выполнения заданий рекомендуется установить компилятор Lisp, поддерживающий стандарт Common Lisp, например, SBCL.

dns

Программа

Неделя 1
Парадигмы программирования, место и роль функциональной парадигмы,
история развития языков программирования, история языка Lisp, принципы
исполнения программ на языке Lisp и других языках.
Основы языка Lisp, формы и функции, система типов, предикаты и
элементарные логические функции, операции с байтами и битами.

Неделя 2
Массивы, списки и строки в языке Lisp, простейшие алгоритмы работы со
списками, ассоциативные списки, построение деревьев и множеств на основе
списков.
Определение функций в языке Lisp, управление памятью, области видимости
и время жизни переменных, механизмы вызова функций, итерация и рекурсия,
мемоизация, простейшие рекурсивные алгоритмы, хвостовые рекурсивные вызовы.

Неделя 3
Анонимные функции и замыкания, функции как объекты первого класса,
проблема фунарга.
Практическое использование приемов функционального программирования,
отображение, свертка и фильтрация последовательностей, левая и правая
свертки, работа с хэш-таблицами.

Неделя 4
Средства макрообработки текстов программ, макросы в языке Lisp, проблемы
совпадения имен, анафорические макросы, макрос LOOP, предотвращение
повторного вычисления аргументов.
Организация ввода-вывода в программах на языке Lisp, ссылочная
прозрачность и чистота функций, основные функции ввода-вывода, работа с
файлами, сокетами и потоками ввода-вывода.

Неделя 5
Макросы чтения в языке Lisp, ленивые вычисления и их роль в
функциональном программировании, подходы к реализации ленивых вычислений
в программе на языке Lisp. Подведение итогов курса, экзамен.

record_voice_over

Пользователи

Alexei Guirik
Assistant Professor, Faculty of Information Technology Security
ITMO University

assistant

Платформа

Edx

EdX est une plateforme d'apprentissage en ligne (dite FLOT ou MOOC). Elle héberge et met gratuitement à disposition des cours en ligne de niveau universitaire à travers le monde entier. Elle mène également des recherches sur l'apprentissage en ligne et la façon dont les utilisateurs utilisent celle-ci. Elle est à but non lucratif et la plateforme utilise un logiciel open source.

EdX a été fondée par le Massachusetts Institute of Technology et par l'université Harvard en mai 2012. En 2014, environ 50 écoles, associations et organisations internationales offrent ou projettent d'offrir des cours sur EdX. En juillet 2014, elle avait plus de 2,5 millions d'utilisateurs suivant plus de 200 cours en ligne.

Les deux universités américaines qui financent la plateforme ont investi 60 millions USD dans son développement. La plateforme France Université Numérique utilise la technologie openedX, supportée par Google.

Вы разработчик этого МООК ?
Какую оценку вы бы дали этому ресурсу ?
Содержание
5/5
Платформа
5/5
Анимация
5/5