2015-04-23 19:34:47 +00:00
\ifger { Wir werden die Rekursionsstruktur erneut herausabstrahieren! Die Typsignatur sieht so aus:} { Let's abstract out the common pieces! This will be our type signature:}
2015-04-19 22:32:50 +00:00
\begin { haskellcode}
filter :: (a -> Bool) -> [a] -> [a]
\end { haskellcode}
2015-04-23 19:34:47 +00:00
\ifger { Lösung?} { Solution?}
2015-04-19 22:32:50 +00:00
\pause
\begin { haskellcode}
filter :: (a -> Bool) -> [a] -> [a]
filter f [] = []
filter f (x:xs)
| f x = x : filter f xs
| otherwise = filter f xs
\end { haskellcode}
2015-04-23 19:34:47 +00:00
\ifger { Diese Funktion ist ebenfalls Teil von \emph { Prelude} .} { Again: this function is part of the \emph { Prelude} as well.}