|
@@ -22,7 +22,7 @@
|
|
|
|
|
|
\def\racketEd{0}
|
|
|
\def\pythonEd{1}
|
|
|
-\def\edition{1}
|
|
|
+\def\edition{0}
|
|
|
|
|
|
% material that is specific to the Racket edition of the book
|
|
|
\newcommand{\racket}[1]{{\if\edition\racketEd{#1}\fi}}
|
|
@@ -2143,6 +2143,9 @@ class InterpLint:
|
|
|
match p:
|
|
|
case Module(body):
|
|
|
self.interp_stmts(body, {})
|
|
|
+
|
|
|
+def interp_Lint(p):
|
|
|
+ return InterpLint().interp(p)
|
|
|
\end{lstlisting}
|
|
|
\fi}
|
|
|
\caption{Interpreter for \LangInt{} as a class.}
|
|
@@ -2188,6 +2191,9 @@ class InterpLvar(InterpLint):
|
|
|
return self.interp_stmts(ss[1:], env)
|
|
|
case _:
|
|
|
return super().interp_stmts(ss, env)
|
|
|
+
|
|
|
+def interp_Lvar(p):
|
|
|
+ return InterpLvar().interp(p)
|
|
|
\end{lstlisting}
|
|
|
\fi}
|
|
|
\caption{Interpreter for the \LangVar{} language.}
|
|
@@ -3004,7 +3010,7 @@ print(tmp_1)
|
|
|
\end{minipage}
|
|
|
}
|
|
|
\caption{\LangVarANF{} is \LangVar{} with operands restricted to
|
|
|
- atomic expressions, like administrative normal form (ANF).}
|
|
|
+ atomic expressions.}
|
|
|
\label{fig:Lvar-anf-syntax}
|
|
|
\end{figure}
|
|
|
|