Search results

lift2 :: forall a b c f. Apply f => (a -> b -> c) -> f a -> f b -> f c

Lift a function of two arguments to a function which accepts and returns values wrapped with the type constructor f.

lift2 add (Just 1) (Just 2) == Just 3
lift2 add Nothing (Just 2) == Nothing
P purescript-prelude M Control.Apply
lift2 :: forall v2 v1 v0 f c. HasApply c f => HasMap c f => ObjectOf c v0 => ObjectOf c v1 => ObjectOf c v2 => ObjectOf c (c v1 v2) => ObjectOf c (f (c v1 v2)) => ObjectOf c (f v0) => ObjectOf c (f v1) => ObjectOf c (f v2) => ObjectOf c (c (f v1) (f v2)) => ObjectOf c (c (f v0) (f (c v1 v2))) => ObjectOf c (f (c v0 (c v1 v2))) => Restrictable Function c => Slackable c => c v0 (c v1 v2) -> c (f v0) (c (f v1) (f v2))
P purescript-subcategory M Control.Subcategory.Endofunctor.HasApply
lift2 :: forall v2 v1 v0 f c. HasApply c f => HasMap c f => ObjectOf c v0 => ObjectOf c v1 => ObjectOf c v2 => ObjectOf c (c v1 v2) => c v0 (c v1 v2) -> f v0 -> f v1 -> f v2
P purescript-subcategory M Control.Subcategory.Functor.HasApply
lift2 :: forall c b a. (a -> b -> c) -> Jet (Atomic a) -> Jet (Atomic b) -> Jet (Atomic c)

Combine two Atomic values using a regular function.

Note: The result will change (entirely) if either argument changes. If changes should be independent, consider using a Tuple instead.

P purescript-incremental-functions M Data.Incremental.Eq
P purescript-typelevel-eval M Type.Eval
P purescript-typelevel-eval M Type.Eval
P purescript-typelevel-eval M Type.Eval
lift2Elem :: forall a b. (b -> a -> b) -> b -> Elem a -> b
P purescript-sequences M Data.Sequence.Internal

No further results.