\subsection{Paper organistation}
\label{sec:intro:org}
In this paper we present different advantages of working with imperative code
in a functional style. We do this by means of a case study, an interpreter of
the language While~\citep{proganal}. After describing While briefly in
\autoref{sec:intro:while}, we will iteratively build our interpreter: the lexer
in \autoref{sec:lexer}, the parser in \autoref{sec:parser} and the actual
interpreter in \autoref{sec:interpreter}. As an intermezzo, in
\autoref{sec:evaluation} we discuss different possibilities of evaluating
mathematical expressions. Finally, in \autoref{sec:conclusions} we precisely
articulate the advantages of functional interpretation.
