Не могу доказать :-(
Dec. 6th, 2007 02:57 pmНебольшое вступление.
Есть такой модуль Control.Applicative, в котором определён класс Applicative
т.е. он чуть шире
( тут мне непонятно )
Есть такой модуль Control.Applicative, в котором определён класс Applicative
class Functor a => Applicative a where pure :: a -> f a <*> :: f (a -> b) -> f a -> f b
т.е. он чуть шире
Functor
(за счёт pure
), и чуть уже Monad
. Золотая середина - полезно, когда нам от монад нужен только return
.( тут мне непонятно )