[Haskell-cafe] <**> for nested applicative functors?

Conal Elliott conal at conal.net
Tue Oct 13 15:32:10 EDT 2009


Hi Kim-Ee,

This pattern shows up in "Applicative programming with effects" in showing
that the composition of applicatives is applicative: (<*>) = liftA2 (<*>),
and pure = pure.pure .  (Really, you have to manage newtype wrappers as
well.  See the TypeCompose library.)

   - Conal

On Mon, Oct 12, 2009 at 9:52 AM, Kim-Ee Yeoh <a.biurvOir4 at asuhan.com> wrote:

>
> That's it: liftA2 (<*>), so obvious in hindsight.
>
> Mustn't ... code ... when ... drained ....
>
> Thanks to Jeremy and Josef.
>
>
> Jeremy Shaw-3 wrote:
> >
> > This looks like what is described in Section 4 to me:
> >
> >
> http://www.haskell.org/haskellwiki/Applicative_functor#Applicative_transfomers
> >
> > - jeremy
> >
> > On Oct 12, 2009, at 11:22 AM, Kim-Ee Yeoh wrote:
> >
> >> <**> :: (Applicative m, Applicative n) =>
> >> m (n (a->b)) -> m (n a) -> m (n b)
> >
>
> --
> View this message in context:
> http://www.nabble.com/%3C**%3E-for-nested-applicative-functors--tp25858792p25859274.html
> Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20091013/84bb282d/attachment.html


More information about the Haskell-Cafe mailing list