При чтении части кода Haskell я натолкнулся на это: <$>
. Что это значит в Haskell? После некоторых поисковых запросов я остаюсь в неведении.
Что означает <$> в Haskell?
Ответ 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 уже давно не в сети.