\begin{slide}{Speicher}

Modellierung:
  \begin{verbatim}
import qualified Data.Map as M
newtype Addr = Addr Int 
type Store = M.Map Addr Val
newtype Action a = 
    Action ( Store -> ( Store, a ))
\end{verbatim}

spezifische Aktionen:
\begin{verbatim}
new :: Val -> Action Addr
get :: Addr -> Action Val
put :: Addr -> Val -> Action ()
\end{verbatim}
Aktion ausführen, Resultat liefern:
\begin{verbatim}
run :: Store -> Action a -> a
\end{verbatim}


\end{slide}

