Найти свой путь через Скалаз [дубликат]

Возможный дубликат:

Хорошее введение в скалаз

Я хотел бы узнать больше о Scalaz, возможно, используя Scalaz7, чтобы избежать переподключения моего мозга, как только он будет объявлен стабильным. Моя проблема в том, что Scalaz содержит много функций. Хотя большая часть этого предназначается, чтобы быть независимой от других частей, я хотел бы иметь птицуВзгляд на глобальную функциональность, которую предлагает Скалаз, и то, как она организована. Насколько я знаю, Скалаз предлагает, помимо прочего,

FunctorApplicative а такжеMonad черты,новые монады, такие какValidation (правка: оказывается, это только аппликатив)монадные трансформаторы (,OptionTEitherT....) sItereateeLensESSZipper

К этому добавлено много неявных преобразований и новых конструкторов, таких какsome которые перекрываются со стандартной библиотекой, но ведут себя лучше в отношении типов

:type Some(3) // Some[Int]
:type some(3) // Option[Int]

У меня есть базовые знания большинства этих конструкций, но я не владею ни одной из этих концепций.

Есть ли у вас какие-либо предположения, в каком порядке изучать библиотеку, какие логические зависимости существуют между модулями? В целом, где я могу найти общий обзор библиотеки?

РЕДАКТИРОВАТЬ Кажется, что большинство ответов направлены на изучение базовых компонентов функционального программирования, таких как монады, поэтому я попытаюсь быть более точным. У меня есть базовые знания по Haskell и математика, поэтому моя проблема не связана с теорией категорий или базовым функциональным программированием.

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

Ответы на вопрос(4)

Ваш ответ на вопрос