>>119
それに関する議論は>>117のhaskell wikiのリンク先に書いてあるよ
zeroを持つMonadZeroと分配律を備えるMonadPlus、return aが左零元になるMonadOrに分けようっていう内容だったか
でもそんなことするよかErrorみたいな類はMonadPlusよかControl.Applicative.Alternativeとして使ったほうが意味がはっきりするんじゃねーのとも思う