|
| Org.Org.Semantic.HBase.Category.Arrow |
|
|
|
|
|
| Synopsis |
|
| class Compositor arrow => Arrow arrow where | | | | arrMap :: Arrow arrow => (a -> b) -> arrow p a -> arrow p b | | | arrCoMap2 :: Arrow arrow => (b -> a) -> arrow a q -> arrow b q | | | class Arrow arrow => ProductArrow arrow where | | arrApply :: arrow p (q -> r) -> arrow p q -> arrow p r | | arrProduct :: arrow p q -> arrow p r -> arrow p (q, r) |
| | | liftA2 :: ProductArrow arrow => (a -> b -> r) -> arrow p a -> arrow p b -> arrow p r | | | arrFirst :: ProductArrow arrow => arrow p q -> arrow (p, r) (q, r) | | | arrSecond :: ProductArrow arrow => arrow p q -> arrow (r, p) (r, q) | | | arrBoth :: ProductArrow arrow => arrow pl ql -> arrow pr qr -> arrow (pl, pr) (ql, qr) | | | arrFuncMap :: ProductArrow arrow => (p -> q -> r) -> arrow p q -> arrow p r | | | arrPair :: ProductArrow arrow => arrow p q -> arrow p (p, q) | | | class Arrow arrow => CoproductArrow arrow where | | arrCoproduct :: arrow p r -> arrow q r -> arrow (Either p q) r |
| | | arrLeftChoice :: CoproductArrow arrow => arrow pl ql -> arrow (Either pl r) (Either ql r) | | | arrRightChoice :: CoproductArrow arrow => arrow pr qr -> arrow (Either l pr) (Either l qr) | | | arrBothChoice :: CoproductArrow arrow => arrow pl ql -> arrow pr qr -> arrow (Either pl pr) (Either ql qr) | | | arrMaybeMap :: CoproductArrow arrow => arrow p q -> arrow (Maybe p) (Maybe q) | | | class (ProductArrow arrow, CoproductArrow arrow) => FullArrow arrow | | | class Arrow arrow => ArrowFix arrow where | | arrFix :: arrow (p, q) q -> arrow p q |
| | | arrLoop :: ArrowFix arrow => arrow (p, r) (q, r) -> arrow p q | | | class FullArrow arrow => ApplyArrow arrow where | | | | functionArrow :: ApplyArrow arrow => (p -> (arrow x q, x)) -> arrow p q | | | makeApplyArrow :: ApplyArrow arrow => (p -> arrow () q) -> arrow p q | | | unApplyArrow :: ApplyArrow arrow => arrow p q -> p -> arrow () q | | | newtype ArrowFunctor arrow a b = MkArrowFunctor {} |
|
|
| Documentation |
|
| class Compositor arrow => Arrow arrow where |
| | Methods | | arrFunction :: (p -> q) -> arrow p q | | | arrReturn :: q -> arrow p q |
| | | Instances | |
|
|
| arrMap :: Arrow arrow => (a -> b) -> arrow p a -> arrow p b |
|
| arrCoMap2 :: Arrow arrow => (b -> a) -> arrow a q -> arrow b q |
|
| class Arrow arrow => ProductArrow arrow where |
| corresponds to Hughes' 'Arrow' | | | Methods | | arrApply :: arrow p (q -> r) -> arrow p q -> arrow p r | | | arrProduct :: arrow p q -> arrow p r -> arrow p (q, r) |
| | | Instances | |
|
|
| liftA2 :: ProductArrow arrow => (a -> b -> r) -> arrow p a -> arrow p b -> arrow p r |
|
| arrFirst :: ProductArrow arrow => arrow p q -> arrow (p, r) (q, r) |
|
| arrSecond :: ProductArrow arrow => arrow p q -> arrow (r, p) (r, q) |
|
| arrBoth :: ProductArrow arrow => arrow pl ql -> arrow pr qr -> arrow (pl, pr) (ql, qr) |
|
| arrFuncMap :: ProductArrow arrow => (p -> q -> r) -> arrow p q -> arrow p r |
|
| arrPair :: ProductArrow arrow => arrow p q -> arrow p (p, q) |
|
| class Arrow arrow => CoproductArrow arrow where |
| | Methods | | arrCoproduct :: arrow p r -> arrow q r -> arrow (Either p q) r |
| | | Instances | |
|
|
| arrLeftChoice :: CoproductArrow arrow => arrow pl ql -> arrow (Either pl r) (Either ql r) |
|
| arrRightChoice :: CoproductArrow arrow => arrow pr qr -> arrow (Either l pr) (Either l qr) |
|
| arrBothChoice :: CoproductArrow arrow => arrow pl ql -> arrow pr qr -> arrow (Either pl pr) (Either ql qr) |
|
| arrMaybeMap :: CoproductArrow arrow => arrow p q -> arrow (Maybe p) (Maybe q) |
|
| class (ProductArrow arrow, CoproductArrow arrow) => FullArrow arrow |
| corresponds to Hughes' 'ArrowChoice' | | | Instances | |
|
|
| class Arrow arrow => ArrowFix arrow where |
| | Methods | | arrFix :: arrow (p, q) q -> arrow p q |
| | | Instances | |
|
|
| arrLoop :: ArrowFix arrow => arrow (p, r) (q, r) -> arrow p q |
|
| class FullArrow arrow => ApplyArrow arrow where |
| | Methods | | arrApplyArrow :: arrow (arrow p q, p) q |
| | | Instances | |
|
|
| functionArrow :: ApplyArrow arrow => (p -> (arrow x q, x)) -> arrow p q |
|
| makeApplyArrow :: ApplyArrow arrow => (p -> arrow () q) -> arrow p q |
|
| unApplyArrow :: ApplyArrow arrow => arrow p q -> p -> arrow () q |
|
| newtype ArrowFunctor arrow a b |
| Constructors | | MkArrowFunctor | | | unArrowFunctor :: (arrow a b) | |
|
| | Instances | |
|
|
| Produced by Haddock version 0.6 |