Hello,
I am often asked what a good way to get started with Scalaz would be. It
turns out, there is no good way and that the idea of a "good way to get
started" doesn't really make sense in the context of the Scalaz library,
so some people are disappointed when I do not give a clear answer.
Although there is still not a good answer, I can at least articulate a
task that can possibly help.
The Pointed type-class is a mistake. It should not exist on its own. It
belongs on Applicative. The point operation should look like this:
trait Applicative[F[_]] extends Apply[F] {
def point[A](a: => A): F[A]
}
I spent about 30 minutes initiating this change, without the intention
of completing it, but I just wanted to see what would be involved. I
learned that a lot of thinking and learning would be involved.
Nevertheless, I think fixing this bug is quite important. So if anyone
is up to it, there would be free cookies involved.
--
Tony Morris
http://tmorris.net/