[英]fmap on functions in Haskell
我正在嘗試為函數實現fmap,並且無法弄清楚如何將“lift”應用於函數,而不是所有文檔如何引用像Maybe
這樣的簡單類型
我想要實現的函數的類型是
fmapFunction :: (a -> b) -> (e -> a) -> (e -> b)
有什么想法我應該怎么做?
可能更容易看到你是否翻轉類型:
(e -> a) -> (a -> b) -> (e -> b)
我們可以將e
轉換為a
,將a
轉換為b
。 那么我們怎么能把e
變成b
呢?
不要過分關注“提升”; 使用Functor
實例,發現實現的最佳方法就是遵循類型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.