
Rustom Mody
I have started an arrow tutorial which many people found easy to follow. It's not finished yet, but since so many people found it useful I'm sharing that unfinished tutorial:
http://ertes.de/new/tutorials/arrows.html
It answers the most important questions: What? Why? How? To some extent it also answers: When? But I have to work on that question.
As usual this is useful and I'll be studying it in more detail. For now a general question: What do you think of *teaching* Haskell replacing monads with arrows in the early introduction?
According to my experience the same rule that applies to monads also
applies to arrows. In other words: If you can teach monads, you likely
also can teach arrows. If you can't teach monads, don't try to teach
arrows either.
My current position is that understanding applicative functors and
monads makes it much easier to learn arrows. But there is also strong
evidence that teaching arrows first might be useful, building on the
correspondence between Category+Applicative and Arrow. I have not
tried this though.
About my approach to teaching monads there has been a discussion on
Reddit recently:
http://www.haskell.org/pipermail/haskell-cafe/2012-May/101338.html
http://www.reddit.com/r/haskell/comments/u04vp/building_intuition_for_monads...
Greets,
Ertugrul
--
Key-ID: E5DD8D11 "Ertugrul Soeylemez