?

Log in

No account? Create an account
Атакуем ApplicativeApplication - Дважды мудак [entries|archive|friends|userinfo]
Декларативное рулит

Site Meter

[ website | Мой сайт ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Атакуем ApplicativeApplication [окт. 6, 2017|23:44 pm]
Andy Melnikov
[Tags|, , ]

Ещё направление аналогий:

pure = zipWith0 = fmap0
fmap = zipWith1 = fmap1
liftA2 = zipWith2 = fmap2

Ну, и аргумент у liftA2 оказывается излишним, его можно заменить таплом:

class Functor f => Applicative' f where
  pure' :: a -> f a
  liftA2' :: f a -> f b -> f (a, b)
оказывается эквивалентен обычному аппликативу.

Всё равно ничего не понятно.
СсылкаОтветить