### changeset 661:d5552715db53

Update compiler phases
author Adam Chlipala Thu, 12 Mar 2009 12:23:23 -0400 9abeb533f6a7 039ad51cf9c3 doc/manual.tex 1 files changed, 8 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/doc/manual.tex	Thu Mar 12 12:18:11 2009 -0400
+++ b/doc/manual.tex	Thu Mar 12 12:23:23 2009 -0400
@@ -1610,6 +1610,14 @@

Remove all definitions not needed to run the page handlers that are visible in the signature of the last module listed in the \texttt{.urp} file.

+\subsection{Rpcify}
+
+Pieces of code are determined to be client-side, server-side, neither, or both, by figuring out which standard library functions might be needed to execute them.  Calls to server-side functions (e.g., $\mt{query}$) within mixed client-server code are identified and replaced with explicit remote calls.  Some mixed functions may be converted to continuation-passing style to facilitate this transformation.
+
+\subsection{Untangle, Shake}
+
+Repeat these simplifications.
+
\subsection{\label{tag}Tag}

Assign a URL name to each link and form action.  It is important that these links and actions are written as applications of named functions, because such names are used to generate URL patterns.  A URL pattern has a name built from the full module path of the named function, followed by the function name, with all pieces separated by slashes.  The path of a functor application is based on the name given to the result, rather than the path of the functor itself.