Recently scalaz caught my eye. It looks very interesting, but I have not found any good introduction to the library. Seems that scalaz incorporates a lot of ideas from haskell and mathematics. Most articles that I found assume that you already feel comfortable with these concepts.
What I'm looking for is gradual introduction to the library and underlying concepts - from simple and basic concepts to more advanced (which basesd in basics).
I also looked to the examples, but it's hard for me to find the point where I should start to learn library.
Can somebody recommend me some good scalaz introduction or tutorial (that covers basics and advanced concepts)? Or give me starting point in the answer.
Update
Thanks everybody for the great answers! I summarized all of the answers and added some more links in my blog:
http://hacking-scala.org/post/49050104489/scalaz-resources-for-beginners
And for those stuggling to find the API documentation for Scalaz they are here:
http://docs.typelevel.org/api/scalaz/nightly/index.html#package
Hieko Seeberger has recently started blogging on functional programming and category theory applied to Scala. Two opening posts are very educative (and easy to read), and can help getting over the initial barrier in learning scalaz.
EDIT: When you get comfortable with the fundamentals, I would recommend you to read through http://apocalisp.wordpress.com/ (blog driven by Runar Oli and Mark Harrah) and the weblog of Tony Morris
UPD: "Functors, Applicative Functors and Monoids" chapter of "Learn You a Haskell for Great Good!" has a lot of examples in Haskell with detailed explanations, which can easily be translated to Scala/scalaz.
I wrote a series of posts on my blog on this topic, and then compiled it together:
There are also some video resources I have seen presenting scalaz at an introductory level,
- http://vimeo.com/10482466
- http://vimeo.com/15264203
They are both given by contributors to scalaz and introduce the contents and concepts illustrated by evolving a series of code examples. The audiences for both these talks were Scala enthusiast groups.
I have found this notes interesting:
http://debasishg.blogspot.com/search/label/scalaz
Not tested myself, but maybe this Scalaz Guide can help, initially written in November 2010
(and/or can be contributed to, since it is no longer maintained since mid-2012).
Videos:
- Scalaz overview by Nick Partridge and by Jason Zaugg
- Practical Scalaz by Chris Marshall
- Lenses by Edward Kmett (5 parts)
- Reader monad by Tony Morris and by Rúnar Bjarnason
- State monad by Michael Pilquist
- Monad transformers by Jordan West
(Copied from my answer of a closed duplicate).
Chris Marshall recently did a talk at LSUG/Skills Matter on Practical Scalaz: Making Your Life Easier the hard way.