Хорошее введение в скалаз
Недавно скалаз попался на глаза. Это выглядит очень интересно, но я не нашел хорошего представления о библиотеке. Похоже, в скалазе много идей из хаскелла и математики. Большинство статей, которые я нашел, предполагают, что вы уже чувствуете себя комфортно с этими понятиями.
То, что я ищу, - это постепенное введение в библиотеку и базовые концепции - от простых и базовых концепций до более продвинутых (которые основаны на основах).
Я также посмотрел на примеры, но мне трудно найти точку, с которой я должен начать изучать библиотеку.
Может ли кто-нибудь порекомендовать мне хорошее введение в скаляр или руководство (которое охватывает основы и продвинутые концепции)? Или дайте мне отправную точку в ответе.
Обновить
Спасибо всем за отличные ответы! Я суммировал все ответы и добавил еще несколько ссылок в свой блог:
http://hacking-scala.org/post/49050104489/scalaz-resources-for-beginners
И для тех, кто пытается найти документацию по API для Scalaz, они здесь:
8 ответов
Hieko Seeberger недавно начал вести блог о функциональном программировании и теории категорий, применяемых в Scala. Два вступительных сообщения очень познавательны (и их легко читать), и они могут помочь преодолеть первоначальный барьер в изучении скаляза.
РЕДАКТИРОВАТЬ: Когда вы освоитесь с основами, я бы порекомендовал вам прочитать http://apocalisp.wordpress.com/ (блог, управляемый Рунар Оли и Марк Харра) и блог Тони Морриса
UPD: "Функторы, аппликативные функторы и моноиды" в главе "Учим вас на гаскелле за великое благо!" В Haskell есть много примеров с подробными пояснениями, которые легко можно перевести на Scala/scalaz.
Я написал серию постов в своем блоге на эту тему, а затем собрал их вместе:
Есть также несколько видеоресурсов, которые я видел, представляя скаляр на начальном уровне,
Они оба предоставлены участниками скалаза и представляют содержание и концепции, проиллюстрированные путем разработки серии примеров кода. Аудитория обоих этих выступлений - группы энтузиастов Scala.
Я нашел эти заметки интересными:
Сам не проверял, но, возможно, это руководство Scalaz может помочь, изначально написанное в ноябре 2010 года (и / или может быть добавлено, поскольку оно больше не поддерживается с середины 2012 года).
Еще пара ресурсов.
- StackMob недавно опубликовал хорошую статью о линзах. На их сайте есть еще несколько статей о Scalaz.
- Видео Дэна Розена, объясняющее монады Option, Validation и List.
Видео:
- Обзор Скалаза Ником Партриджем и Джейсоном Зауггом
- Практический Скалаз Криса Маршалла
- Линзы Эдварда Кметта (5 частей)
- Читательская монада Тони Морриса и Рунара Бьярнасона
- Государственная монада Михаила Пилквиста
- Монадные трансформаторы от Jordan West
(Скопировано из моего ответа закрытого дубликата).
Крис Маршалл недавно выступил в LSUG/Skills Matter с речью "Практический скалас: трудная жизнь, облегчающая вашу жизнь".