Рекомендуем установить Haskell Stack
и все упражнения
запускать в нем.
-
установка для Windows:
-
имя вашего пользователя Windows должно содержать только латинские буквы и цифры, никаких пробелов. В противном случае создайте нового пользователя-администратора с подходящим именем, например,
admin
, и продолжайте установку из него. Переименование юзера не годится, нужно создать нового. -
используйте установщик, минимальная версия системы - Windows 7 64-разрядная.
-
-
установка для Linux & Mac OS X: установите по инструкции или поставьте нужный пакет (
stack
илиhaskell-stack
) через пакетный менеджер вашей ОС (apt
,yum
,brew
и т.п.). Версия на сайте более свежая.
Больше ничего устанавливать не требуется, никаких Haskell Platform, ghcup, ghc, cabal. Stack самостоятельно скачает и установит компилятор и библиотеки.
Как запустить: откройте консоль (командную строку) и наберите команду stack repl
-
запустится интерпретатор выражений Haskell. В первый раз придется подождать, пока
загрузится и установится компилятор. Если установка выполнена правильно,
отобразится подсказка ко вводу:
Prelude> _
-
Минимум, необходимый для написания самых простых проектов:
- Learn You a Haskell for Great Good!.
- О Haskell по-человечески - можно использовать в дополнение. Это простой учебник на русском, но он не закончен.
-
Параллельно выполняйте каты из Codewars
-
Обязательно попробуйте найти и пройти от 3-х кат самостоятельно! Можете взглянуть на список дополнительных кат от тех, кто проходил обучение до вас.
После того, как изучены вышеназванные источники, можно одновременно выполнять дальнейшие задания и понемногу изучать следующие ресурсы.
-
Обязательно: системное описание почти всех самых популярных тайпклассов — Typeclassopedia.
-
Обязательно: учебник чуть более глубоко описывающий Haskell — https://anton-k.github.io/ru-haskell-book/book/home.html.
Позволяет понять многие теоретические моменты. Обязательны к прочтению главы 1-9, остальные по желанию.
-
Обязательно: видео-курс на степик от Дениса Москвина.
https://stepik.org/course/75/ — первая часть курса, очень системный и развернутый материал по Haskell. Она обязательна к изучению.
https://stepik.org/course/693/ - 2-я часть курса, она уже необязательна. Материал тут достаточно сложный, его рекомендуем изучать после того, как сделаны первые версии бота и сервера, чтобы закрепить полученные на практике знания и расширить/углубить их.
-
Очень рекомендуется: книга для начинающих с хорошим практическим уклоном Get Programming with Haskell (W. Kurt).
Т.к. эта книга не доступна бесплатно, мы не включили её в обязательную часть, но очень рекомендуем. Здесь есть очень приближенные к реальным задачи, с помощью которых вы можете быстро и эффективно начать писать свои приложения, вроде бота. Книга максимально свежая и актуальная, хорошо написана. Практика показала, что изучающие её в рамках нашей программы потом её активно хвалили :)
-
По желанию: сделать упражнения из глав Real World Haskell, которые помогут освоиться с приближенными к реальным задачам.
-
По желанию: часто рекомендуемая многими новичками книга http://haskellbook.com/.
-
По желанию: видео-курс от Николая Кудасова.
-
По желанию: Write Yourself a Scheme in 48 Hours.
Упражнение по написанию простого интерпретатора для языка Scheme (язык, с которого был слизан JavaScript). https://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours.
Есть так же перевод на русский (там могут быть не все части или неактуальные данные): https://ru.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours.
Очень рекомендую пройти, на самом деле туториал довольно небольшой, но дает хороший пример написания средних по размеру програм, в то время как почти все остальные туториалы нацелены на примеры совсем тривиальных вещей в один-два файла.
-
Выводы и ссылки на рецензии о современных книгах по Haskell.
-
Статьи по различным темам, которые могут оказаться полезными для понимания того или иного материала