From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 7D678BB84 for ; Fri, 30 Jun 2006 15:47:47 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.6/8.13.6) with ESMTP id k5UDlmxG031823 for ; Fri, 30 Jun 2006 15:47:48 +0200 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id PAA23666 for ; Fri, 30 Jun 2006 15:47:47 +0200 (MET DST) Received: from shiva.jussieu.fr (shiva.jussieu.fr [134.157.0.129]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id k5UDlkok030462 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 30 Jun 2006 15:47:47 +0200 Received: from hydrogene.pps.jussieu.fr (hydrogene.pps.jussieu.fr [134.157.168.1]) by shiva.jussieu.fr (8.13.7/jtpda-5.4) with ESMTP id k5UDljE6069194 for ; Fri, 30 Jun 2006 15:47:46 +0200 (CEST) X-Ids: 164 Received: from darmstadtium.pps.jussieu.fr (darmstadtium.pps.jussieu.fr [134.157.168.110]) by hydrogene.pps.jussieu.fr (8.13.4/jtpda-5.4) with ESMTP id k5UDlkxM001405 for ; Fri, 30 Jun 2006 15:47:46 +0200 From: Vincent Balat Organization: Labo PPS - =?iso-8859-15?q?universit=E9_Paris?= 7 To: caml-list@inria.fr Subject: Re: [Caml-list] Which development framework for web application in OCaml? Date: Fri, 30 Jun 2006 15:49:15 +0200 User-Agent: KMail/1.9.1 References: <3d13dcfc0606230918i1b20de56ne27a7b823eb06660@mail.gmail.com> <44A2BF4F.9050907@ens-lyon.org> In-Reply-To: <44A2BF4F.9050907@ens-lyon.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200606301549.16121.balat@pps.jussieu.fr> X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0.2 (shiva.jussieu.fr [134.157.0.164]); Fri, 30 Jun 2006 15:47:46 +0200 (CEST) X-Virus-Scanned: ClamAV 0.88.2/1578/Fri Jun 30 11:34:32 2006 on shiva.jussieu.fr X-Virus-Status: Clean X-Miltered: at nez-perce with ID 44A52B84.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 44A52B82.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at shiva.jussieu.fr with ID 44A52B81.006 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; ocaml:01 ocaml:01 camlp:01 modular:01 syntax:01 javascript:98 caml-list:01 typing:01 typing:01 pps:01 jussieu:01 usable:01 modules:01 modules:01 interaction:02 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.3 Hi, > There is also Ocsigen ( http://www.ocsigen.org/ ) which is a nice > extension of OCaml (i.e. modules + camlp4) to develop websites in a > functional style. I have been asked for more information about Ocsigen. Ocsigen is a research project aiming at finding a more robust way to program Web sites, using functional programming (continuations) and strong typing. It is not a new language but a set of modules for Objective Caml and a web server. Main features: - Valid xhtml generation through static typing - Typing of Web interaction (links, forms...) - Automatic session handling - Javascript generation (AJAX) (work in progress) - typed database interaction (work in progress) It allows to program web sites in a very concise and modular way, and makes the maintenance of large web sites much easier compared to usual Web programming tools. Ocsigen was born in 2004 (even though the idea is older) and is now usable (see for example www.ocsigen.org). The syntax is not completely fixed yet (as we are experimenting with a lot of new ideas) but the development is very active and we hope to publish version 1 before the end of the year. Vincent Balat PS: For other research projects in the same style, see for example WebSiCoLa, Links, Hop, or Wash/CGI