\begin{slide}{Konstruktorklassen (Functor)}

\begin{verbatim}
class Functor c where
    fmap :: ( a -> b ) -> ( c a -> c b )

instance Functor [] where
    fmap f l = case l of
        [] -> []
        x : xs -> f x : fmap f xs

instance Functor Maybe where ...

instance Functor Tree where ...
\end{verbatim}
unterscheide von:
\begin{verbatim}
instance Show a => Show (Tree a) where ...
\end{verbatim}


\end{slide}
