X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fmaster-project%2Freport.git;a=blobdiff_plain;f=Chapters%2FNormalization.tex;fp=Chapters%2FNormalization.tex;h=4eb9c62b2b3c2af966c23da337628828e36d6a7c;hp=8de37949200931e5eeae8d337b29e949e03843f9;hb=b2e587f9ea84f6cdd281772667e508544549e6ef;hpb=10aead726acc0c5a8a17d76f10e6fd1aa0c94319 diff --git a/Chapters/Normalization.tex b/Chapters/Normalization.tex index 8de3794..4eb9c62 100644 --- a/Chapters/Normalization.tex +++ b/Chapters/Normalization.tex @@ -1441,6 +1441,9 @@ this. \subsection{Case normalisation} + The transformations in this section ensure that case statements end up + in normal form. + \subsubsection{Scrutinee simplification} This transform ensures that the scrutinee of a case expression is always a simple variable reference. @@ -1474,6 +1477,7 @@ This transformation ensures that all case expressions get a form that is allowed by the intended normal form. This means they will become one of: \refdef{intended normal form definition} + \startitemize \item An extractor case with a single alternative that picks a field from a datatype, \eg\ \lam{case x of (a, b) -> a}.