Control.Monad, Control.Applicative vs. Data.Foldable,
lemming at henning-thielemann.de
Mon Oct 1 10:06:00 EDT 2007
What is the reason for some of the standard type classes being in 'Data'
folder and some in 'Control'? Since, say 'Reader' is a monad, an
applicative thing, an arrow and an instance of other classes - why is it
located in Control.Monad? Why not Data.Reader? I find it reasonable to
have a directory for concrete data types and one directory for classes.
Currently I cannot see, why the Reader data type is in Monad, Monad is in
Control, but Foldable class is in Data, together with List, Tree and other
concrete data types.
More information about the Libraries