|
@@ -4612,11 +4612,11 @@ tag plus \itm{len} times 8.)
|
|
|
|$v$|) ... )))) ...)
|
|
|
\end{lstlisting}
|
|
|
(In the above, we suppressed all of the \code{has-type} forms in the
|
|
|
-output for the sake of readability.) The ordering of the initializing
|
|
|
-expressions ($e_0,\ldots,e_{n-1}$) prior to the \code{allocate} is
|
|
|
-important, as those expressions may trigger garbage collection and we
|
|
|
-do not want an allocated but uninitialized tuple to be present during
|
|
|
-a garbage collection.
|
|
|
+output for the sake of readability.) The placement of the initializing
|
|
|
+expressions $e_0,\ldots,e_{n-1}$ prior to the \code{allocate} and
|
|
|
+the sequence of \code{vector-set!}'s is important, as those expressions
|
|
|
+may trigger garbage collection and we do not want an allocated but
|
|
|
+uninitialized tuple to be present during a garbage collection.
|
|
|
|
|
|
The output of \code{expose-allocation} is a language that extends
|
|
|
$R_3$ with the three new forms that we use above in the translation of
|