\begin{slide}{Lokale Funktionen}

\begin{verbatim}
{ var a = 5;
  var f = (x => a*x);
  print f(3);
  { var a = 7;
    print f(3);
  }
}
\end{verbatim}

bei Auswertung von \verb|f(3)|:
\begin{itemize}
\item dynamische Bindung: verwendet inneres $a (= 7)$,
\item statische Bindung: verwendet äußeres $a (= 5)$.
\end{itemize}

nur Programme mit statischer Bindung 
können statisch typ-geprüft werden.

\end{slide}

