\begin{slide}{Datentyp für Parser}



\begin{verbatim}
data Parser c a = 
     Parser ( [c] -> [ (a, [c]) ] )
\end{verbatim}

  \begin{itemize}
  \item über Eingabestrom von Zeichen (Token) $c$,
  \item mit Resultattyp $a$,
  \item nichtdeterministisch (List).
  \end{itemize}


Beispiel-Parser, Aufrufen mit:
\begin{verbatim}
parse :: Parser c a -> [c] -> [(a,[c])]
parse (Parser f) w = f w
\end{verbatim}


\end{slide}

