|
@@ -1773,7 +1773,7 @@ statements always ends with \key{Return}, a guarantee that is baked
|
|
into the grammar rules for the \itm{tail} non-terminal. The naming of
|
|
into the grammar rules for the \itm{tail} non-terminal. The naming of
|
|
this non-terminal comes from the term \emph{tail position}\index{tail position},
|
|
this non-terminal comes from the term \emph{tail position}\index{tail position},
|
|
which refers to an expression that is the last one to execute within a
|
|
which refers to an expression that is the last one to execute within a
|
|
-function. (A expression in tail position may contain subexpressions,
|
|
|
|
|
|
+function. (An expression in tail position may contain subexpressions,
|
|
and those may or may not be in tail position depending on the kind of
|
|
and those may or may not be in tail position depending on the kind of
|
|
expression.)
|
|
expression.)
|
|
|
|
|
|
@@ -2008,7 +2008,7 @@ R^{\dagger}_1 &::=& \PROGRAM{\code{'()}}{\Exp}
|
|
Figure~\ref{fig:r1-anf-syntax} presents the grammar for the output of
|
|
Figure~\ref{fig:r1-anf-syntax} presents the grammar for the output of
|
|
this pass, language $R_1^{\dagger}$. The main difference is that
|
|
this pass, language $R_1^{\dagger}$. The main difference is that
|
|
operator arguments are required to be atomic expressions. In the
|
|
operator arguments are required to be atomic expressions. In the
|
|
-literature this is called \emph{administrative normal form}, or ANF
|
|
|
|
|
|
+literature, this is called \emph{administrative normal form}, or ANF
|
|
for short~\citep{Danvy:1991fk,Flanagan:1993cg}.
|
|
for short~\citep{Danvy:1991fk,Flanagan:1993cg}.
|
|
\index{administrative normal form}
|
|
\index{administrative normal form}
|
|
\index{ANF}
|
|
\index{ANF}
|