我經歷these Haskell的「中間」的練習,我做了以下情況:仿函數實例聲明中的箭頭運算符?
class Fluffy f where
furry :: (a -> b) -> f a -> f b
instance Fluffy [] where
furry f [] = []
instance Fluffy Maybe where
furry f (Just e) = Just (f e)
furry f (Nothing) = Nothing
然而,第三個問題語法已難倒我:
instance Fluffy ((->) t) where
...
我讀過並閱讀this的答案,該答案解釋了在Monad實例中(->)
的作用。不過,我不太明白(->)
如何在Functors的情況下工作?