Proarrow.Promonad.Cont
newtype Cont r a b Source Comments #
Constructors
Fields
Defined in Proarrow.Promonad.Cont
Methods
act :: (a ~> b) -> Cont r x y -> Cont r (Act a x) (Act b y) Source Comments #
dimap :: (c ~> a) -> (b ~> d) -> Cont r a b -> Cont r c d Source Comments #
(\\) :: ((Ob a, Ob b) => r0) -> Cont r a b -> r0 Source Comments #
id :: Ob a => Cont r a a Source Comments #
(.) :: Cont r b c -> Cont r a b -> Cont r a c Source Comments #
dual :: forall (a :: KLEISLI (Cont r)) (b :: KLEISLI (Cont r)). (a ~> b) -> Dual b ~> Dual a Source Comments #
dualInv :: forall (a :: KLEISLI (Cont r)) (b :: KLEISLI (Cont r)). (Ob a, Ob b) => (Dual a ~> Dual b) -> b ~> a Source Comments #
linDist :: forall (a :: KLEISLI (Cont r)) (b :: KLEISLI (Cont r)) (c :: KLEISLI (Cont r)). (Ob a, Ob b, Ob c) => ((a ** b) ~> Dual c) -> a ~> Dual (b ** c) Source Comments #
linDistInv :: forall (a :: KLEISLI (Cont r)) (b :: KLEISLI (Cont r)) (c :: KLEISLI (Cont r)). (Ob a, Ob b, Ob c) => (a ~> Dual (b ** c)) -> (a ** b) ~> Dual c Source Comments #
curry' :: forall (a :: KLEISLI (Cont r)) (b :: KLEISLI (Cont r)) (c :: KLEISLI (Cont r)). Obj a -> Obj b -> ((a ** b) ~> c) -> a ~> (b ~~> c) Source Comments #
uncurry' :: forall (b :: KLEISLI (Cont r)) (c :: KLEISLI (Cont r)) (a :: KLEISLI (Cont r)). Obj b -> Obj c -> (a ~> (b ~~> c)) -> (a ** b) ~> c Source Comments #
(^^^) :: forall (b :: KLEISLI (Cont r)) (y :: KLEISLI (Cont r)) (x :: KLEISLI (Cont r)) (a :: KLEISLI (Cont r)). (b ~> y) -> (x ~> a) -> (a ~~> b) ~> (x ~~> y) Source Comments #