[Haskell-cafe] categories in Haskell and module names
beroal at ukr.net
Wed Oct 5 17:22:58 CEST 2011
IMHO there are 2 ways to define categories in Haskell:
W0) the category of types and functions ("base.Data.Functor" and company
belongs to it);
W1) the class "base.Control.Category.Category".
(Defining a category where the class of objects is a type seems
impossible in Haskell.)
But these ways are mingled in "base". E.g. "Control.Applicative" (W0)
and "Control.Category" (W1) are neighbors. Oddly, "Data.Functor" (W0) is
under "Data". I believe that the whole library "category-extras" belongs
I suggest to split these ways under distinct names, e.g.:
W0) Category.Function (@hom == (->)@);
W1) Category.Hom ("hom" is an abstract type constructor).
Maybe both should be under "Mathematics".
More information about the Haskell-Cafe