map :: (a -> b) -> [a] -> [b]
fmap :: Functor f => (a -> b) -> f a -> f b
liftM :: Monad m => (a -> b) -> m a -> m b
Run Code Online (Sandbox Code Playgroud)
为什么我们有三个不同的功能,基本上是一样的?
无论我已经尝试使用map,fmap已工作过.为什么Haskell的创建者觉得需要一个map函数?难道它不仅仅是目前已知的fmap并且fmap可以从语言中删除吗?