A strong lax semi-monoidal endofunctor. This is equivalent to an Applicative without pure.
Laws:
(.) <$> u <.> v <.> w = u <.> (v <.> w)
x <.> (f <$> y) = (. f) <$> x <.> y
f <$> (x <.> y) = (f .) <$> x <.> y
The laws imply that .> and <. really ignore their left and right results, respectively, and really return their right and left results, respectively. Specifically,
(mf <$> m) .> (nf <$> n) = nf <$> (m .> n)
(mf <$> m) <. (nf <$> n) = mf <$> (m <. n)
Instances67Apply, …
Apply ComplexDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply FirstDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply LastDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply MaxDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply MinDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply IntMapDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassAn IntMap is not Applicative, but it is an instance of Apply
Apply SeqDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply TreeDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply NonEmptyDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply IdentityDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply FirstDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply LastDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply DownDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply DualDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply ProductDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply SumDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply ZipListDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply Par1Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply MaybeDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply IODefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply QDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply []Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApplicative f => Apply (WrappedApplicative f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassMonad m => Apply (WrappedMonad m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassSemigroup m => Apply (Tuple2 m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA
is not Applicative unless its(,)mmis a Monoid, but it is an instance of ApplyOrd k => Apply (Map k)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA 'Map k' is not Applicative, but it is an instance of Apply
Apply ProxyDefined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply U1Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply V1Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA V1 is not Applicative, but it is an instance of Apply
Apply (Either a)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply f => Apply (MaybeApply f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply f => Apply (Lift f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Functor m, Monad m) => Apply (MaybeT m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Hashable k, Eq k) => Apply (HashMap k)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA 'HashMap k' is not Applicative, but it is an instance of Apply
Semigroup f => Apply (Constant f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA
Constant fis not Applicative unless itsfis a Monoid, but it is an instance of ApplySemigroup m => Apply (Const m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA
Const mis not Applicative unless itsmis a Monoid, but it is an instance of ApplyArrow a => Apply (WrappedArrow a b)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply (Tagged a)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply f => Apply (Alt f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply f => Apply (Rec1 f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply f => Apply (Static f a)Defined in semigroupoids-6.0.1 · Data.Semigroupoid.StaticApply f => Apply (Backwards f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply f => Apply (Reverse f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply m => Apply (ReaderT e m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply w => Apply (TracedT m w)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply w => Apply (IdentityT w)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassBiapply p => Apply (Join p)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassBind m => Apply (StateT s m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassBind m => Apply (StateT s m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassBind m => Apply (WriterT w m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Functor m, Monad m) => Apply (ExceptT e m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Semigroup e, Apply w) => Apply (EnvT e w)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassAn
EnvT e wis not Applicative unless itseis a Monoid, but it is an instance of Apply(Apply m, Semigroup w) => Apply (WriterT w m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA
WriterT w mis not Applicative unless itswis a Monoid, but it is an instance of Apply(Apply m, Semigroup w) => Apply (WriterT w m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA
WriterT w mis not Applicative unless itswis a Monoid, but it is an instance of Apply(Apply w, Semigroup s) => Apply (StoreT s w)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA
StoreT s wis not Applicative unless itssis a Monoid, but it is an instance of ApplySemigroup c => Apply (K1 i c)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassA
K1 i cis not Applicative unless itscis a Monoid, but it is an instance of ApplyApply (Cokleisli w a)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply (ContT r m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply ((->) m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Apply f, Apply g) => Apply (Product f g)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Apply f, Apply g) => Apply (f :*: g)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassApply f => Apply (M1 i t f)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassBind m => Apply (RWST r w s m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Apply f, Apply g) => Apply (Compose f g)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Apply f, Apply g) => Apply (f :.: g)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.Class(Bind m, Semigroup w) => Apply (RWST r w s m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassAn
RWST r w s mis not Applicative unless itswis a Monoid, but it is an instance of Apply(Bind m, Semigroup w) => Apply (RWST r w s m)Defined in semigroupoids-6.0.1 · Data.Functor.Bind.ClassAn
RWST r w s mis not Applicative unless itswis a Monoid, but it is an instance of Apply