- Listはなぜかモナドから外されて単なる関手扱い。
- 白が“クラス”で青が“インスタンス”ということだろう。
- 矢印はクラス間の extends と、インスタンス-クラス間の member-of
- モナドの末尾は M というネーミングルールだが、守られてはいない。
- Pure と Bind は記法クラスで、以前の HasPure と HasBind だろう。
- Monad, Applicative, Functor の系列を見ると、Applicateive は pure を持っている。
- モナドの具体例は、オプションモナド、リーダーモナド、状態モナド、例外モナド
事前にListをモナドにしないで、Applicative List とかで持ち上げていくようだ。