Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think it's clearer to think of map as a function

    (a -> b) -> (f a -> f b)
i.e. one which lifts function application over values of the functor. This is then analagous to the role of `f` for mapping types, and corresponds to the concept of a functor in the category of types. This relationship is harder to see in the tupled version. There's a similar argument for e.g.

    =< :: (a -> m b) -> (m a -> m b)


Typo: =<<




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: