EMBER_CLI_FASTBOOT_BODY

Функциональное программирование на языке Haskell (часть 2)

Курс является продолжением курса "Функциональное программирование на языке Haskell". Мы познакомимся с новыми типами данных и классами типов, упрощающими работу с эффектами, и позволяющими конструировать и использовать составные эффекты.

Certificate Stepik

About this course

Этот курс является продолжением курса "Функциональное программирование на языке Haskell".

В его рамках мы познакомимся с рядом новых классов типов и типов данных, которые позволят сделать наши программы еще более выразительными и лаконичным. Особое внимание будет уделено программированию с эффектами. Мы встретимся с новыми монадами, узнаем про аппликативные функторы - класс типов, лежащий между функторами и монадами. Мы обобщим понятие свертки, знакомое нам по спискам, на произвольные контейнерные типы, введя класс типов Foldable. Не останавливаясь на этом, мы введем класс Traversable, соединяющий идеи функтора и свертки с одной стороны и отображающей/сворачивающей функции с аппликативным/монадическим эффектом с другой. Мы научимся реализовывать вычисления с составными эффектами, используя как механизм композиции на уровне типов, так и более мощный инструментарий монадических трансформеров.

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

Программа базируется на курсах, читавшихся в Академическом университете РАН и Computer Science Center.

Who is this course for

Знакомство с синтаксисом и стандартной библиотекой Haskell в объеме первой части курса

Meet the Instructors

User picture
Денис Москвин
доцент НИУ ВШЭ

Course content

Аппликативные функторы
  1.  
     
  2.  
     
  3.  
     
  4.  
     
  5.  
     
Управление эффектами
Монады и эффекты
Трансформеры монад

Certificate

Certificate Stepik

Learners' reviews

Курс - легенда
Отличный курс! Хорошо систематизирован материал.
Шикарный курс. Очень академично, все разложено по полочкам, но при этом задачки порой заставляют поломать голову. При нынешнем отсутствии жестких сроков это позволяет растянуть удовольствие. Огромное спасибо составителям.

Share this course