Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
CamlGI question
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2005-04-19 (19:55)
From: Gerd Stolpmann <info@g...>
Subject: Re: Common CGI interface (was: [Caml-list] CamlGI question)
Am Dienstag, den 19.04.2005, 21:03 +0200 schrieb Christophe TROESTLER:
> On Tue, 19 Apr 2005, Christopher Alexander Stein <> wrote:
> > 
> > Je pense qu'aujourd'hui, une interface [...] de CGI est [...] important
> I am not sure what is your point but the trouble right now is not that
> there are no CGI library but that there are too many [1]!  So let me
> place a call:
>  | Would people be interested in setting up a list to discuss a common
>  | CGI-like interface, i.e. a minimal set of services to be offered
>  | (in the same vein to what was done I/O objects, see
>  |  [It should not
>  | be hurried as for some library authors, this is not the main job.]
>  | The aim is to make possible to develop higher level libraries
>  | (e.g. template libraries) that work whatever the basic interface
>  | one favors.

Good idea. However, I think it is too late for such a discussion.

First, it already happened. Do you remember Bedouin? Although this
debate was about the general design of web applications, there was also
a "branch" targeting the low-level stuff, especially CGI and other
connectors. This branch was Ocamlnet.

Second, Ocamlnet exactly defines the "minimal set of services" (besides
including several implementations). The interesting point is that it is
possible to do implementations outside Ocamlnet by just defining
compatible classes. This was a design idea from the very beginning,
realized by using classes instead of functors everywhere. Because
Ocamlnet has several layers, the developer of a new connector is even
free to choose the level of the implementation, often giving one the
chance to reuse code.

I am quite astonished at seeing that many CGI implementations. I only
knew the implementation of de Rauglaudre and Filliatre, and its
limitations were one the motivations to develop Ocamlnet. Except
mod_ocaml, which is somehow a different thing, the other libraries seem
to have the same limitations: Non-modular design, missing features like
upload of large (> 16 MB) files, or internationalization. I don't say
Ocamlnet is perfect, but it is a step into the right direction.


> > Une interface de base de données (MySQL) suit de près derrière.
> There are libraries for many databases as well as a generic one: DBI
> (
> Cheers,
> ChriS
> ---
> [1] Among others,
> - Maxence Guesdon CGI (
> - CamlGI (
> - fcgi-ocaml (
> - mod_caml (
> - OCamlnet (
> - cgi (
> _______________________________________________
> Caml-list mailing list. Subscription management:
> Archives:
> Beginner's list:
> Bug reports:
Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany