Personal tools

Functor

From HaskellWiki

(Difference between revisions)
Jump to: navigation, search
m (+cat)
Current revision (18:52, 19 September 2012) (edit) (undo)
(Added section "More reading" with a link to "The functor design pattern")
 
(3 intermediate revisions not shown.)
Line 10: Line 10:
fmap (p . q) = (fmap p) . (fmap q)
fmap (p . q) = (fmap p) . (fmap q)
-
[[Category:Standard classes]]
+
 
 +
== More reading ==
 +
 
 +
* [http://www.haskellforall.com/2012/09/the-functor-design-pattern.html The functor design pattern]
 +
 
 +
 
 +
 
 +
[[Category:Functor|*]]

Current revision

Functor class (base)
import Control.Monad

The Functor class is defined like this:

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

All instances of Functor should obey:

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


More reading