sjanssen | matthew-_: I think you want liftM2 f |

sorear | matthew-_: liftM2 |

matthew-_ | many thanks you guys are great |

sorear | > liftM2 (+) (Just 3) (Just 4) |

lambdabot | Just 7 |

sorear | > liftM2 (+) (Just 3) Nothing |

lambdabot | Nothing |

sorear | > liftM2 (+) [1,2,3] [10,20,30] |

lambdabot | [11,21,31,12,22,32,13,23,33] |

sorear | > liftM2 (+) (*2) (*3) 10 |

lambdabot | 50 |

ddarius | pjd: Depending on your math background the easiest thing (if it's not all the great) would be to ask about certain things here. E.g. monoids are very simple, but when you have no idea what they are it can be confusing. |

pjd | i know what they are, yeah and monads, and functors |

ddarius | pjd: I didn't know/remember what they were when I started reading CT literature. |

JohnnyL | @type liftM2 |

lambdabot | forall a1 a2 r (m :: * -> *). (Monad m) => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r |

ddarius | Anyways, one of my favorites is http://www.let.uu.nl/esslli/Courses/barr-wells.html |

pjd | also some basic abstract algebra ideas |

lambdabot | Title: Courses: Barr / Wells |

JohnnyL | @src liftM2 |

lambdabot | liftM2 f m1 m2 = do { x1 <- m1; x2 <- m2; return (f x1 x2) } |

ddarius | There's a pdf version of that paper that can be found if you'd prefer. |

pjd | the lecture notes? |

dino- | I'm reading the Hughes paper _Generalising Monads to Arrows_, at some point he's discussing class MonadPlus, showing the function to impl as (++). Is that just old? That's not really the operator notation used (except for the [] monad). |

sorear | dino-: that sounds like the kind of thing in the 1.4 prelude ... things were alot more polymorphically useful back then |

Cale | Right, (++) was the monadic plus in 1.4 |

ddarius | pjd: Yes. Also, these http://www.brics.dk/~mcaccamo/ are very close to how I would (and do in a paper I'm working on) present CT. |

lambdabot | Title: Mario José Cáccamo |

ddarius | @google Categorical Manifesto |

lambdabot | http://citeseer.ist.psu.edu/goguen91categorical.html Title: A Categorical Manifesto - Goguen (ResearchIndex) |

ddarius | Finally, that is a good read. Albeit, not an introduction or tutorial. |

dino- | sorear, Cale: Interesting. Thank you. |

pjd | much thanks those are all new to me |

nominolo | @impl init |

lambdabot | Maybe you meant: pl unpl |