<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=Haskell_25</id>
	<title>Haskell 25 - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=Haskell_25"/>
	<link rel="alternate" type="text/html" href="https://wikicshse.ru/index.php?title=Haskell_25&amp;action=history"/>
	<updated>2026-06-06T13:18:37Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wikicshse.ru/index.php?title=Haskell_25&amp;diff=319&amp;oldid=prev</id>
		<title>imported&gt;TurtlePU: /* Домашние задания */</title>
		<link rel="alternate" type="text/html" href="https://wikicshse.ru/index.php?title=Haskell_25&amp;diff=319&amp;oldid=prev"/>
		<updated>2025-03-06T02:21:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Домашние задания&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Промышленное программирование на Haskell ==&lt;br /&gt;
&lt;br /&gt;
Весенний курс по выбору для студентов 4 курса ФКН ВШЭ.&lt;br /&gt;
&lt;br /&gt;
=== Команда курса ===&lt;br /&gt;
&lt;br /&gt;
Лектор: Павел Соколов aka [https://t.me/TurtlePU @TurtlePU].&lt;br /&gt;
&lt;br /&gt;
Семинарист: Илья Костюченко aka [https://t.me/ilyakooo0 @ilyakooo0].&lt;br /&gt;
&lt;br /&gt;
Ассистенты: Ислам Талипов aka [https://t.me/lishy2 @lishy2] и Глеб Смирнов aka [https://t.me/liferooter @liferooter].&lt;br /&gt;
&lt;br /&gt;
=== Ссылки ===&lt;br /&gt;
&lt;br /&gt;
Канал в телеграм: https://t.me/+Is4I3YPaBWk3NjIy&lt;br /&gt;
&lt;br /&gt;
Чат в телеграм: https://t.me/+lcim6Ukmojc5ZGUy&lt;br /&gt;
&lt;br /&gt;
Конспекты лекций: https://github.com/Haskell-HSE/haskell-lectures-2025&lt;br /&gt;
&lt;br /&gt;
Материалы семинаров: https://github.com/ilyakooo0/production-haskell&lt;br /&gt;
&lt;br /&gt;
Записи лекций и семинаров: https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell&lt;br /&gt;
&lt;br /&gt;
Таблица с оценками: https://docs.google.com/spreadsheets/d/19wFHBrf5e5x-5vtSdfq70tZAIMHW1bAy4kJki5TqWN4/edit?usp=sharing&lt;br /&gt;
&lt;br /&gt;
== Setting up ==&lt;br /&gt;
&lt;br /&gt;
# Установка компилятора, системы сборки, языкового сервера&lt;br /&gt;
#* (Рекомендованный способ) Через [https://www.haskell.org/ghcup/ ghcup]:&lt;br /&gt;
#*# Скачайте [https://downloads.haskell.org/~ghcup/ бинарный файл] сами либо введите одну любимую команду:&lt;br /&gt;
#*#* &amp;#039;&amp;#039;&amp;#039;MacOS&amp;#039;&amp;#039;&amp;#039;: &amp;lt;code&amp;gt;brew install ghcup&amp;lt;/code&amp;gt;&lt;br /&gt;
#*#* &amp;#039;&amp;#039;&amp;#039;Arch&amp;#039;&amp;#039;&amp;#039;-based distros: &amp;lt;code&amp;gt;yay -S ghcup-hs-bin&amp;lt;/code&amp;gt;&lt;br /&gt;
#*#* &amp;#039;&amp;#039;&amp;#039;WSL2&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;MacOS&amp;#039;&amp;#039;&amp;#039; &amp;gt;= 10.13, &amp;#039;&amp;#039;&amp;#039;Linux&amp;#039;&amp;#039;&amp;#039;: &amp;lt;code&amp;gt;curl --proto &amp;#039;=https&amp;#039; --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh&amp;lt;/code&amp;gt;&lt;br /&gt;
#*#* &amp;#039;&amp;#039;&amp;#039;Windows&amp;#039;&amp;#039;&amp;#039;: Команда доступна по [https://www.haskell.org/ghcup/install/#installation ссылке].&lt;br /&gt;
#*# Убедитесь, что путь до места установки &amp;lt;code&amp;gt;ghcup&amp;lt;/code&amp;gt; (скорее всего, &amp;lt;code&amp;gt;~/.ghcup/bin&amp;lt;/code&amp;gt; либо &amp;lt;code&amp;gt;C:/ghcup&amp;lt;/code&amp;gt;) содержится в &amp;lt;code&amp;gt;$PATH&amp;lt;/code&amp;gt; &amp;amp;mdash; запустите &amp;lt;code&amp;gt;ghcup list&amp;lt;/code&amp;gt;. При необходимости добавьте этот путь сами.&lt;br /&gt;
#*# Установите &amp;#039;&amp;#039;&amp;#039;&amp;lt;code style=&amp;quot;background-color:black;color:rgb(0,255,0)&amp;quot;&amp;gt;recommended&amp;lt;/code&amp;gt;&amp;#039;&amp;#039;&amp;#039; версии компилятора, системы сборки и языкового сервера:&lt;br /&gt;
#*## &amp;lt;code&amp;gt;ghcup install ghc recommended&amp;lt;/code&amp;gt;&lt;br /&gt;
#*## &amp;lt;code&amp;gt;ghcup install stack recommended&amp;lt;/code&amp;gt;&lt;br /&gt;
#*## &amp;lt;code&amp;gt;ghcup install hls recommended&amp;lt;/code&amp;gt;&lt;br /&gt;
#*# Создайте символические ссылки на установленные версии программ:&lt;br /&gt;
#*## &amp;lt;code&amp;gt;ghcup set ghc recommended&amp;lt;/code&amp;gt;&lt;br /&gt;
#*## &amp;lt;code&amp;gt;ghcup set stack recommended&amp;lt;/code&amp;gt;&lt;br /&gt;
#*## &amp;lt;code&amp;gt;ghcup set hls recommended&amp;lt;/code&amp;gt;&lt;br /&gt;
#* (Если предыдущий вариант не сработал) &amp;#039;&amp;#039;&amp;#039;Windows&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
#*# &amp;lt;code&amp;gt;choco install haskell-language-server haskell-stack&amp;lt;/code&amp;gt;&lt;br /&gt;
#*# &amp;lt;code&amp;gt;refreshenv&amp;lt;/code&amp;gt;&lt;br /&gt;
# Настройте LSP client в своей любимой среде разработки:&lt;br /&gt;
#* Для &amp;#039;&amp;#039;&amp;#039;VS Code&amp;#039;&amp;#039;&amp;#039; есть [https://github.com/haskell/vscode-haskell плагин]. Скорее всего, при запуске он предложит выбрать, каким образом ему находить HLS: через GHCup или вручную через PATH. Если устанавливали через &amp;lt;code&amp;gt;chocolatey&amp;lt;/code&amp;gt;, выбирайте вторую опцию; иначе сначала попробуйте через GHCup.&lt;br /&gt;
#* В &amp;#039;&amp;#039;&amp;#039;NeoVim&amp;#039;&amp;#039;&amp;#039; настройте [https://github.com/neovim/nvim-lspconfig nvim-lspconfig], он знает про HLS.&lt;br /&gt;
#* Инструкцию для других сред можно найти [https://haskell-language-server.readthedocs.io/en/latest/configuration.html#configuring-your-editor здесь].&lt;br /&gt;
# (Опционально) Установите [https://hoogle.haskell.org Hoogle] локально:&lt;br /&gt;
## &amp;lt;code&amp;gt;stack install hoogle&amp;lt;/code&amp;gt;&lt;br /&gt;
## Теперь можно пользоваться Hoogle прямо из ghci с помощью команды &amp;lt;code&amp;gt;:!hoogle&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;:!hoogle --info&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
=== Лекции, семинары ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция I&amp;#039;&amp;#039;&amp;#039; (14 янв). Где и почему используют Haskell? Синтаксис. Ленивые вычисления. [https://github.com/Haskell-HSE/haskell-lectures-2025/blob/main/src/L1_Intro.md Конспект]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202025-01-14T09-57-14Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар I&amp;#039;&amp;#039;&amp;#039; (15 янв). Stack. Типы данных. [https://github.com/ilyakooo0/production-haskell/tree/f7a77e80fd059a0d5b181cb7f020bb04859ac0bf/seminars/1 Материалы]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202025-01-15T08-03-06Z%20(2).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция II&amp;#039;&amp;#039;&amp;#039; (21 янв). Сравнение с образцом. Композиция. Классы типов Eq, Ord, Num, Read, Show. Основы работы с IO. [https://github.com/Haskell-HSE/haskell-lectures-2025/blob/main/src/L1_Intro.md Конспект]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202025-01-21T10-05-23Z%20(1).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар II&amp;#039;&amp;#039;&amp;#039; (22 янв). Сбалансированные деревья. [https://github.com/ilyakooo0/production-haskell/tree/f7a77e80fd059a0d5b181cb7f020bb04859ac0bf/seminars/1 Материалы]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202025-01-22T08-12-26Z%20(2).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция III&amp;#039;&amp;#039;&amp;#039; (28 янв). Законы классов типов. Классы Semigroup, Monoid, Foldable, Functor, Applicative, Monad. [https://github.com/Haskell-HSE/haskell-lectures-2025/blob/main/src/L2_Laws.md Конспект]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202025-01-28T09-59-42Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар III&amp;#039;&amp;#039;&amp;#039; (29 янв). Практика с моноидами. [https://github.com/ilyakooo0/production-haskell/tree/f7a77e80fd059a0d5b181cb7f020bb04859ac0bf/seminars/2 Материалы]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202025-01-29T08-09-45Z%20(2).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция IV&amp;#039;&amp;#039;&amp;#039; (04 фев). Важнейшие примеры монад: Identity, Maybe, Either, State, IO. [https://github.com/Haskell-HSE/haskell-lectures-2025/blob/main/src/L04_Monads.hs Конспект]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202025-02-04T09-58-25Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар IV&amp;#039;&amp;#039;&amp;#039; (05 фев). Тестирование, основанное на свойствах. Консультация к ДЗ-1. [ Материалы]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202025-02-05T08-09-52Z%20(2).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция V&amp;#039;&amp;#039;&amp;#039; (11 фев). Парсинг как сайд-эффект. Комбинаторы парсеров. Классы Alternative и MonadPlus. [https://github.com/Haskell-HSE/haskell-lectures-2025/blob/main/src/L05_Parsers.hs Конспект]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202025-02-11T10-00-44Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар V&amp;#039;&amp;#039;&amp;#039; (12 фев). Генераторы случайных чисел. Консультация к ДЗ-1. [ Материалы]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202025-02-12T08-08-49Z%20(2).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция VI&amp;#039;&amp;#039;&amp;#039; (18 фев). Композиция (аппликативных) функторов. Трансформеры монад. [https://github.com/Haskell-HSE/haskell-lectures-2025/blob/main/src/L06_Transformers.hs Конспект]. [https://disk.yandex.ru/d/IoakBXz_6yygPw/%D0%9F%D1%80%D0%BE%D0%BC%D1%8B%D1%88%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BD%D0%B0%20Haskell/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202025-02-18T10-00-14Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар VI&amp;#039;&amp;#039;&amp;#039; (19 фев). TBA. [ Материалы]. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция VII&amp;#039;&amp;#039;&amp;#039; (25 фев). Классы монад. Монада Free. Параметричность. [https://github.com/Haskell-HSE/haskell-lectures-2025/blob/main/src/L07_Parametricity.hs Конспект]. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар VII&amp;#039;&amp;#039;&amp;#039; (26 фев). TBA. [ Материалы]. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция VIII&amp;#039;&amp;#039;&amp;#039; (04 мар). TBA. [ Конспект]. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар VIII&amp;#039;&amp;#039;&amp;#039; (05 мар). TBA. [ Материалы]. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция IX&amp;#039;&amp;#039;&amp;#039; (11 мар). TBA. [ Конспект]. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар IX&amp;#039;&amp;#039;&amp;#039; (12 мар). TBA. [ Материалы]. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция X&amp;#039;&amp;#039;&amp;#039; (18 мар). TBA. [ Конспект]. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар X&amp;#039;&amp;#039;&amp;#039; (19 мар). TBA. [ Материалы]. [ Запись].&lt;br /&gt;
&lt;br /&gt;
=== Домашние задания ===&lt;br /&gt;
&lt;br /&gt;
Практические задания по пройденным темам в виде мини-проектов stack. За каждое домашнее задание можно получить до 12 баллов.&lt;br /&gt;
&lt;br /&gt;
* [https://classroom.github.com/classrooms/156670441-enterprise-programming-in-haskell-2025/assignments/haskell-basics Домашнее задание 1]. Дедлайн &amp;#039;&amp;#039;&amp;#039;21 февраля в 23:59&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Домашнее задание 2&amp;#039;&amp;#039;&amp;#039; снимается. &amp;#039;&amp;#039;ОДЗ-2=max(ОДЗ-3, ОДЗ-4)&amp;#039;&amp;#039;.&lt;br /&gt;
* [https://classroom.github.com/a/K-qtPRYu Домашнее задание 3]. Дедлайн &amp;#039;&amp;#039;&amp;#039;16 марта в 23:59&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* [https://classroom.github.com/a/eTQ7otGb Домашнее задание 4]. Дедлайн &amp;#039;&amp;#039;&amp;#039;23 марта в 23:59&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
=== Проект ===&lt;br /&gt;
&lt;br /&gt;
В качестве проекта предлагается доработать одно из домашних заданий следующим образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Расширить функционал приложения, выполненного в домашнем задании (масштаб работ нужно обсудить с лектором либо с семинаристом) (4 балла из 10);&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Покрыть код тестами (2 балла из 10);&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Не использовать &amp;lt;code&amp;gt;unsafe&amp;lt;/code&amp;gt;, если это не было обговорено заранее (2 балла из 10);&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Проанализировать производительность приложения (1 балл из 10; 2 балла, если в проекте разрешён unsafe);&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Поддерживать чистоту кода (1 балл из 10; 2 балла, если в проекте разрешён unsafe):&lt;br /&gt;
  &amp;lt;ul&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;предпочитать использовать готовые комбинаторы из стандартной библиотеки вместо явного паттерн-матчинга стандартных типов данных;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;предпочитать point-free стиль, где это разумно;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;предпочитать пользоваться подсказками HLint;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;код должен быть консистентно отформатирован, неиспользованных импортов быть не должно;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;если в проекте разрешён unsafe, он должен быть отделён от остального приложения какой-то безопасной абстракцией.&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Возможны групповые проекты. Также возможны инициативные темы; они обсуждаются индивидуально, но разбалловка остаётся такой же.&lt;br /&gt;
&lt;br /&gt;
Проект должен быть оформлен в приватном репозитории на github. Оценка выставляется за проект в том состоянии, в котором находилась default ветка репозитория (скорее всего main либо master) &amp;#039;&amp;#039;&amp;#039;в полночь перед защитой&amp;#039;&amp;#039;&amp;#039;. Либо можно оформить сдачу в виде пулл-реквеста.&lt;br /&gt;
&lt;br /&gt;
Защита проекта проводится во время весенней сессии.&lt;br /&gt;
&lt;br /&gt;
=== Оценивание ===&lt;br /&gt;
&lt;br /&gt;
Итог = Округление(min(10, 0.64 * ДЗ + 0.36 * ПР)),&lt;br /&gt;
&lt;br /&gt;
где ДЗ – средняя оценка за все домашние задания, ПР – оценка за проектную работу.&lt;br /&gt;
&lt;br /&gt;
Округление арифметическое.&lt;br /&gt;
&lt;br /&gt;
== Дополнительная литература ==&lt;br /&gt;
&lt;br /&gt;
* Will Kurt – Get Programming with Haskell&lt;br /&gt;
* Bryan O&amp;#039;Sullivan, Don Stewart, John Goerzen – Real World Haskell&lt;br /&gt;
* Alexander Granin – Functional Design and Architecture&lt;br /&gt;
* Sandy Maguire – Algebra-Driven Design&lt;/div&gt;</summary>
		<author><name>imported&gt;TurtlePU</name></author>
	</entry>
</feed>