Generalizing map?

Erik Hesselink hesselink at gmail.com
Fri Mar 13 09:40:27 UTC 2015


Why is this change so important when fmap is already in the prelude?

Erik

On Fri, Mar 13, 2015 at 10:35 AM, Nikita Volkov
<nikita.y.volkov at gmail.com> wrote:
> I can't +1 this enough to express how much I desire that change!
>
> 2015-03-13 12:32 GMT+03:00 Fumiaki Kinoshita <fumiexcel at gmail.com>:
>>
>> A dozen of functions like concat, foldr, mapM, have been generalized
>> through BBP.
>>
>> Then, why do we leave `map` just for lists? Obviously `map` can be
>> generalized, so
>>
>> map :: Functor f => (a -> b) -> f a -> f b
>> map = fmap
>>
>> The current definition of `map` looks too special to be a special case of
>> mapM (map f = runIdentity . mapM (Identity . f)).
>>
>> _______________________________________________
>> Libraries mailing list
>> Libraries at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>
>
>
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>


More information about the Libraries mailing list