
28 Apr
2009
28 Apr
'09
7:36 a.m.
On 22:19 Mon 27 Apr , Martijn van Steenbergen wrote:
Tillmann Rendel wrote:
Achim Schneider wrote:
In other words:
1) Explain Pointed 2) Explain Functor 3) Explain Applicative 4) Explain Monad Why Pointed first? Functor seems more useful and more basic.
They are in order of power: every monad is an applicative; every applicative is a functor; every functor is pointed.
Uhm, isn't it: class (Functor f) => Pointed f where pure :: a -> f a -- singleton, return, unit etc. Got it from: The Typeclassopedia by Brent Yorgey (forgot the URL, sorry) Steffen