@@ -23452,7 +23452,7 @@ \subsection{Same Static Type}
2345223452In short, this transformation adds a unique prefix to every type name
2345323453which is resolved to a top-level declaration
2345423454(in the same library or in an imported library).
23455-
23455+
2345623456This transformation does not change any occurrence of \VOID,
2345723457and does not need to;
2345823458\VOID{} is a reserved word, not a type identifier.
@@ -23474,7 +23474,8 @@ \subsection{Same Static Type}
2347423474
2347523475\LMHash{}%
2347623476When we say that two types $T_1$ and $T_2$ have the
23477- \IndexCustom{same explicitly resolved syntax}{type!same explicitly resolved syntax},
23477+ \IndexCustom{same explicitly resolved syntax}{%
23478+ type!same explicitly resolved syntax},
2347823479it refers to the situation where the current library
2347923480and all libraries which are reachable via one or more imports
2348023481have been transformed as described above,
@@ -23490,7 +23491,7 @@ \subsection{Same Static Type}
2349023491A function type is the only kind of type that declares type variables.
2349123492For example,
2349223493\code{List<X>\,\,\FUNCTION<X>({X\,\,arg})}
23493- can be turned into
23494+ can be turned into
2349423495\code{List<Y>\,\,\FUNCTION<Y>({Y\,\,arg})}
2349523496by alpha conversion.%
2349623497}
@@ -23911,7 +23912,7 @@ \section*{Appendix: Algorithmic Subtyping}
2391123912\item
2391223913 If $T_0$ is \code{($V_0$, \ldots, $V_n$, \{$V_{n+1} d_{n+1}$, \ldots, $V_m d_m$\})}
2391323914 and $T_1$ is \code{($S_0$, \ldots, $S_n$, \{$S_{n+1} d_{n+1}$, \ldots, $S_m d_m$\})}
23914- then \SubtypeNE{T_0}{T_1} if{}f \SubtypeNE{V_i}{S_i} for each $i \in 0 .. m$.
23915+ then \SubtypeNE{T_0}{T_1} if{}f \SubtypeNE{V_i}{S_i} for each $i \in 0 .. m$.
2391523916\end{itemize}
2391623917
2391723918
0 commit comments