\begin{slide}{Funktionen als Daten}

bisher:
\begin{verbatim}
f :: Int -> Int
f x = 2 * x + 5
\end{verbatim}

äquivalent: Lambda-Ausdruck
\begin{verbatim}
f = \ x -> 2 * x + 5
\end{verbatim}

Lambda-Kalkül: Alonzo Church 1936,
Henk Barendregt 198*, \dots

Funktionsanwendung:
\begin{verbatim}
(\ x -> A) B  =  A [x := B]
\end{verbatim}
\dots falls $x$ nicht (frei) in $B$ vorkommt

\end{slide}
