From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 9D408BC48 for ; Tue, 19 Apr 2005 17:22:42 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j3JFMgwS016688 for ; Tue, 19 Apr 2005 17:22:42 +0200 Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id RAA18227 for ; Tue, 19 Apr 2005 17:22:42 +0200 (MET DST) Received: from [128.93.11.101] (buzet.inria.fr [128.93.11.101]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j3JFMfNa031244 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Tue, 19 Apr 2005 17:22:41 +0200 Message-ID: <42652241.3080200@inria.fr> Date: Tue, 19 Apr 2005 17:22:41 +0200 From: Alain Frisch User-Agent: Debian Thunderbird 1.0 (X11/20050116) X-Accept-Language: en-us, en MIME-Version: 1.0 To: caml users Subject: Experimental extension of OCaml with XML types Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at concorde with ID 42652242.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 42652241.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; frisch:01 frisch:01 ocaml:01 caml-list:01 ocaml:01 cduce:01 cduce:01 compiler:01 debugging:01 bindings:01 parsers:01 pxp:01 ...:98 expat:98 expression:01 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.2 X-Spam-Level: Dear caml-list, I'd like to announce an experimental extension of OCaml with built-in support for XML types. It can be seen roughly as a merger between OCaml and CDuce (http://www.cduce.org/). The compiler has been implemented on top of OCaml 3.08.2 and CDuce 0.3.2. The OCaml+CDuce language is intended to provide a simple way to deal with XML documents in OCaml applications. Thanks to XML types, you get static guarantees about the type of XML documents produced by the application. XML pattern matching is a powerful operation, reminiscent of ML pattern matching but much more powerful. Some facilities are provided to translate automatically from regular ML values to CDuce values and back. The language might also be useful for non-XML applications: debugging (using ML-to-XML translation), string regular expression (types and patterns), ... Documentation is very succinct for the moment: http://pauillac.inria.fr/~frisch/ocamlcduce/doc/README.cduce http://pauillac.inria.fr/~frisch/ocamlcduce/doc/ http://pauillac.inria.fr/~frisch/ocamlcduce/tests/ The CDuce documentation might be useful as well: http://www.cduce.org/documentation Home page: http://www.cduce.org/ocaml.html GODI users can try this extension by adding this line: GODI_BUILD_SITES += http://pauillac.inria.fr/~frisch/ocamlcduce/godi to their etc/godi.conf file, and by forcing a recompilation of the godi-ocaml-src and godi-ocaml packages. They should also build the godi-xml-support library, which features bindings for XML parsers (pxp,expat,xml-light) and a tool dtd2types (to generates type declarations from a DTD). Enjoy ! Alain