# HG changeset patch # User Adam Chlipala # Date 1292958087 18000 # Node ID 977901cb52cc191e4f4536f3d1094183224d24ce # Parent ccf1d445b794cbd6297e2e63daeac1470f30c678 More detail on Especialize in the manual diff -r ccf1d445b794 -r 977901cb52cc doc/manual.tex --- a/doc/manual.tex Tue Dec 21 13:57:12 2010 -0500 +++ b/doc/manual.tex Tue Dec 21 14:01:27 2010 -0500 @@ -2229,7 +2229,7 @@ \subsection{Especialize} -Functions are specialized to particular argument patterns. This is an important trick for avoiding the need to maintain any closures at runtime. +Functions are specialized to particular argument patterns. This is an important trick for avoiding the need to maintain any closures at runtime. Currently, specialization only happens for prefixes of a function's full list of parameters, so you may need to take care to put arguments of function types before other arguments. The optimizer will not be effective enough if you use arguments that mix functions and values that must be calculated at run-time. For instance, a tuple of a function and an integer counter would not lead to successful code generation; these should be split into separate arguments via currying. \subsection{Untangle}