The Haskell Programmer’s Guide to the IO Monad ― Don’t Panic ― http://stefan-klinger.de/pub.xhtml

ErlangでなくHaskellで書こうという雰囲気が強まってきた。でHaskellで書くにはいくつか壁を突破しなくてはならない。
ということでまずはモナド
Haskellモナドの解説には、カテゴリ理論よりのものと、プログラミング手法としてのみ扱ってカテゴリ理論にはあまり触れないものの二つがある。
All About Monads http://stefan-klinger.de/pub.xhtml
なんかは、後者で、この"The Haskell Programmer’s Guide to the IO Monad"も題名からなんとなく後者だろうと思ったまま、ずいぶん前に見つけたまま放っておいたが、先週引っ張り出してもう一度読んでみた。
読んでみたら、カテゴリ理論からの説明が主でした。30ページほどで、適当に設定したHaskellのカテゴリのみに絞って
Functor, Natural Transformation ,FunctorとNatural Transformation の合成、そしてMonadと順を追って、カテゴリ理論による定義と、Haskellのカテゴリでの対応物の説明とか証明とかが説明されている。
ということで、

Category Theory (Oxford Logic Guides)

Category Theory (Oxford Logic Guides)

をたまに参照しながらこれを読んでみているが、なんかわかりやすくて、分量、詳しさも適切でよい感じ。