X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Control%2FCategory.hs;h=b63fc67c92ed3d86a5680134f1471102567eab25;hb=41e8fba828acbae1751628af50849f5352b27873;hp=c85ebd5bb8c665564ea4d63415031bda0b72d304;hpb=ee60f7f31db8897f2b078c964fe715813faee702;p=ghc-base.git diff --git a/Control/Category.hs b/Control/Category.hs index c85ebd5..b63fc67 100644 --- a/Control/Category.hs +++ b/Control/Category.hs @@ -1,3 +1,5 @@ +{-# LANGUAGE CPP #-} + ----------------------------------------------------------------------------- -- | -- Module : Control.Category @@ -12,7 +14,6 @@ module Control.Category where -import Prelude hiding (id,(.)) import qualified Prelude infixr 9 . @@ -21,26 +22,26 @@ infixr 1 >>>, <<< -- | A class for categories. -- id and (.) must form a monoid. class Category cat where - -- | the identity morphism - id :: cat a a + -- | the identity morphism + id :: cat a a - -- | morphism composition - (.) :: cat b c -> cat a b -> cat a c + -- | morphism composition + (.) :: cat b c -> cat a b -> cat a c {-# RULES -"identity/left" forall p . - id . p = p -"identity/right" forall p . - p . id = p -"association" forall p q r . - (p . q) . r = p . (q . r) +"identity/left" forall p . + id . p = p +"identity/right" forall p . + p . id = p +"association" forall p q r . + (p . q) . r = p . (q . r) #-} instance Category (->) where - id = Prelude.id + id = Prelude.id #ifndef __HADDOCK__ -- Haddock 1.x cannot parse this: - (.) = (Prelude..) + (.) = (Prelude..) #endif -- | Right-to-left composition