\subsubsection{Evaluation strategies}
Evaluation strategies formalize how programming languages evaluate the code.
Most of the commonly used programming languages use \textit{eager evaluation}, whereas functional programming languages tend to prefer \textit{lazy evaluation}

\paragraph{Lazy Evaluation}
In Lazy Evaluation, expressions are substituted until all possible values are substituted and the expression is then evaluated.

At the exam, it is likely that one such task will appear.

\paragraph{Eager Evaluation}
