Introduction
The first application is really a toolbox to facilitate the construction of
client-server applications which transmit Objective CAML values. To build an
application using the toolbox, one need only implement serialization
functions for the values to be transmitted, then apply a functor to obtain
an abstract class for the server, then add the application's processing
function by means of inheritance.
The second application revisits the robot simulation, presented on page
??, and adapts it to the client-server model. The server
represents the world in which the robot clients move around. We thus simulate
distributed memory shared by a group of clients possibly located on various
machines on the network.
The third application is an implementation of some small HTTP servers (called
servlets). A server knows how to respond to an HTTP request such as
a request to retrieve an HTML page. Moreover, it is possible to pass values
in these requests using the CGI format of HTTP servers. We will use this
functionality right away to construct a server for requests on the association
database, described on page ??. As a client, we will use
a Web browser to which we will send an initial page containing the query form.