comparison doc/manual.tex @ 1378:461250eb24a2

Add a note about Explify to the manual
author Adam Chlipala <adam@chlipala.net>
date Sun, 02 Jan 2011 11:40:08 -0500
parents 44a12a321150
children ede95ecb4000
comparison
equal deleted inserted replaced
1377:730b3d0de1c1 1378:461250eb24a2
2224 2224
2225 \subsection{Elaborate} 2225 \subsection{Elaborate}
2226 2226
2227 This is where type inference takes place, translating programs into an explicit form with no more wildcards. This phase is the most likely source of compiler error messages. 2227 This is where type inference takes place, translating programs into an explicit form with no more wildcards. This phase is the most likely source of compiler error messages.
2228 2228
2229 Those crawling through the compiler source will also want to be aware of another compiler phase, Explify, that occurs immediately afterward. This phase just translates from an AST language that includes unification variables to a very similar language that doesn't; all variables should have been determined by the end of Elaborate, anyway. The new AST language also drops some features that are used only for static checking and that have no influence on runtime behavior, like disjointness constraints.
2230
2229 \subsection{Unnest} 2231 \subsection{Unnest}
2230 2232
2231 Named local function definitions are moved to the top level, to avoid the need to generate closures. 2233 Named local function definitions are moved to the top level, to avoid the need to generate closures.
2232 2234
2233 \subsection{Corify} 2235 \subsection{Corify}