
1 Oct
2007
1 Oct
'07
10:06 a.m.
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.