Ратный труд обертки-композитора

Nov 18, 2016 21:37

Как известно композиция двух функторов является функтором, причем fmap для этой композиции - это композиция fmap'ов:
GHCi> (fmap . fmap) (^2) [Just 3,Just 5,Nothing] [Just 9,Just 25,Nothing] Левый fmap протаскивает свой аргумент (fmap (^2)) через конструкторы списка, а дальше оставшийся fmap протаскивает свой аргумент (^2) через конструкторы ( Read more... )

fprog, haskell, сборник задач и упражнений по Хаскелю, fp

Leave a comment

Comments 7

migmit November 18 2016, 18:44:39 UTC
А вот композиция двух monad transformer-ов, по уму, должна быть monad transformer-ом... но для классического mtl-овского определения это фиг с два напишешь.

Reply


nponeccop November 18 2016, 19:53:45 UTC
Стоит уточнить, что Compose и инстансы уже есть в base и находятся в Data.Functor.Compose

Reply

deni_ok November 18 2016, 20:06:01 UTC
Но ни Hoogle, ни Hayoo их до сих пор не находят, поубивалбы.

Reply

kurilka November 18 2016, 21:17:18 UTC

clayrat November 19 2016, 00:09:04 UTC
deni_ok November 19 2016, 06:10:15 UTC
Ой, <<< - это оператор композиции функций?

Reply

clayrat November 19 2016, 10:49:46 UTC
да, точка зарезервирована под доступ внутрь рекордов
я, кстати, на практике чаще пользуюсь вариантом (>>>), привычнее читать слева направо :)

Reply


Leave a comment

Up