\begin{slide}{Continuations}

Programmablauf-Abstraktion durch Continuations:

Definition:
\begin{verbatim}
with_int  :: Val -> (Int  -> Val) -> Val
with_int v k = case v of
    ValInt i -> k i
    _ -> ValErr "expected ValInt"
\end{verbatim}

Benutzung:
\begin{verbatim}
value env x = case x of 
    Plus l r -> 
        with_int ( value env l ) $ \ i -> 
        with_int ( value env r ) $ \ j -> 
        ValInt ( i + j )
\end{verbatim}

Aufgabe: if/then/else mit \verb|with_bool|

\end{slide}
