Difference between revisions of "Functor"

From HaskellWiki
Jump to: navigation, search
(Updated module.)
m (fix broken link)
Line 1: Line 1:
{{Standard class|Functor|module=Data.Functor|module-doc=Data.Functor|package=base}}
{{Standard class|Functor|module=Data.Functor|module-doc=Data-Functor|package=base}}
The '''Functor''' class is defined like this:
The '''Functor''' class is defined like this:

Revision as of 21:14, 13 October 2014

Functor class (base)
import Data.Functor

The Functor class is defined like this:

class Functor f where
  fmap :: (a -> b) -> f a -> f b

It is available in the Prelude, but defined in Data.Functor.

All instances of Functor should obey:

fmap id      = id
fmap (p . q) = (fmap p) . (fmap q)

More reading