|
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 |