Мы используем файлы cookies для улучшения работы сайта НИУ ВШЭ и большего удобства его использования. Более подробную информацию об использовании файлов cookies можно найти здесь, наши правила обработки персональных данных – здесь. Продолжая пользоваться сайтом, вы подтверждаете, что были проинформированы об использовании файлов cookies сайтом НИУ ВШЭ и согласны с нашими правилами обработки персональных данных. Вы можете отключить файлы cookies в настройках Вашего браузера.

  • A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Бакалаврская программа «Программная инженерия»

06
Апрель

Функциональное программирование

2024/2025
Учебный год
RUS
Обучение ведется на русском языке
5
Кредиты

Преподаватель

Программа дисциплины

Аннотация

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

Цель освоения дисциплины

  • 1. Знакомство с основными понятиями функционального программирования. 2. Знакомство с основными возможностями языка функционального программирования с зависимыми типами Idris. 3. Знакомство с подходами к повышению качества программного обеспечения в функциональном программировании.
Планируемые результаты обучения

Планируемые результаты обучения

  • Готовая к использованию на компьютере студента среда разработки программ на языке Idris.
  • Знакомство с формализацией понятий предметной области как типов языка Idris
  • Знакомство с основным способом обработки данных в языке Idris.
  • Знакомство с обобщенным программированием
  • Знакомство с типами стандартной библиотеки языка Idris
  • Знакомство со способом задания свойств типа
  • Знакомство с интерфейсами стандартной библиотеки языка Idris
  • Знакомство с видами эффектов.
  • Введение в зависимые типы
  • Знакомство с возможностями по созданию тестов
  • Знакомство с использованием Idris как системы формальной верификации
  • Понимание мотивации выбора инструментов разработки для решения конкретной задачи
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение
  • Инструменты разработчика Idris
  • Алгебраические типы данных
  • Полиморфизм
  • Стандартные типы данных
  • Интерфейсы
  • Стандартные интерфейсы
  • Эффекты
  • Зависимые типы
  • Доказательства
  • Тестирование
  • Функции
Элементы контроля

Элементы контроля

  • неблокирующий ДЗ_3,4,5,7,9,10,11,12
    8 ДЗ
  • неблокирующий Экз
Промежуточная аттестация

Промежуточная аттестация

  • 2024/2025 4th module
    Final = 0.125*ДЗ_3+0,125*ДЗ_4+0,125*ДЗ_5+0,125*ДЗ_7+0,125*ДЗ_9+0.125*КР_11+0.125*КР_12+0,125*Экз
Список литературы

Список литературы

Рекомендуемая основная литература

  • Функциональное программирование, Филд, А., 1993

Рекомендуемая дополнительная литература

  • Функциональное программирование : учебник и практикум для академического бакалавриата, Кубенский, А. А., 2017

Авторы

  • Буцкая Евгения Александровна
  • Самоненко Илья Юрьевич