Подтвердить что ты не робот

Что означает <$> в Haskell?

При чтении части кода Haskell я натолкнулся на это: <$>. Что это значит в Haskell? После некоторых поисковых запросов я остаюсь в неведении.

4b9b3361

Ответ 1

Google не лучший поисковик для Haskell. Попробуйте Hoogle или Hayoo, и вы сразу же укажете на это:

(<$>) :: Functor f => (a->b) -> f a -> f b

Это просто инфиксный синоним fmap, так что вы можете написать, например,

Prelude> (*2) <$> [1..3]
[2,4,6]
Prelude> show <$> Just 11
Just "11"

Как и большинство инфиксных функций, это не встроенный синтаксис, а просто определение функции. Но функторы являются настолько фундаментальным инструментом, что <$> встречается почти везде.


Hayoo уже давно не в сети.