diff options
author | Adam Chlipala <adamc@hcoop.net> | 2009-08-25 17:33:13 -0400 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2009-08-25 17:33:13 -0400 |
commit | b1f297cea35d2fa47aa8193d3d90ddf8eb98afaa (patch) | |
tree | 0c17c4e2488fadc7daa109118e623a4871c9bdb8 /doc | |
parent | a7efb65ad2482f9af8e56d628b69811cea5ad56d (diff) |
New release
Diffstat (limited to 'doc')
-rw-r--r-- | doc/manual.tex | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/doc/manual.tex b/doc/manual.tex index cb3ce586..f1f9c967 100644 --- a/doc/manual.tex +++ b/doc/manual.tex @@ -1795,6 +1795,14 @@ $$\begin{array}{l} Transactions can be run on the client by including them in attributes like the $\mt{Onclick}$ attribute of $\mt{button}$, and GUI widgets like $\mt{ctextbox}$ have $\mt{Source}$ attributes that can be used to connect them to sources, so that their values can be read by code running because of, e.g., an $\mt{Onclick}$ event. +\subsubsection{Remote Procedure Calls} + +Any function call may be made a client-to-server ``remote procedure call'' if the function being called needs no features that are only available to client code. To make a function call an RPC, pass that function call as the argument to $\mt{Basis.rpc}$: + +$$\begin{array}{l} + \mt{val} \; \mt{rpc} : \mt{t} ::: \mt{Type} \to \mt{transaction} \; \mt{t} \to \mt{transaction} \; \mt{t} +\end{array}$$ + \subsubsection{Asynchronous Message-Passing} To support asynchronous, ``server push'' delivery of messages to clients, any client that might need to receive an asynchronous message is assigned a unique ID. These IDs may be retrieved both on the client and on the server, during execution of code related to a client. |