Good scalaz introduction [closed]

2019-01-16 00:10发布

问题:

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

回答1:

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.



回答2:

I wrote a series of posts on my blog on this topic, and then compiled it together:

  • learning Scalaz


回答3:

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.



回答4:

I have found this notes interesting:

http://debasishg.blogspot.com/search/label/scalaz



回答5:

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).



回答6:

A couple more resources.

  • StackMob recently published a nice article on Lenses. There are a few more Scalaz articles on their site.
  • A video by Dan Rosen explaning Option, Validation, and List monads.


回答7:

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).



回答8:

Chris Marshall recently did a talk at LSUG/Skills Matter on Practical Scalaz: Making Your Life Easier the hard way.



标签: scala scalaz