用單個值替換 Functor 的所有元素

Data.Functor 模組包含兩個組合器 <$$>,它們忽略了仿函式中包含的所有值,用一個常量值替換它們。

infixl 4 <$, $>

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

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

void 忽略計算的返回值。

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