From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id XAA03282; Sun, 27 Jul 2003 23:57:46 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f 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 XAA23734 for ; Sun, 27 Jul 2003 23:57:45 +0200 (MET DST) Received: from aomori.annexia.org (annexia.force9.co.uk [212.56.101.183]) by concorde.inria.fr (8.11.1/8.11.1) with ESMTP id h6RLvif02624 for ; Sun, 27 Jul 2003 23:57:44 +0200 (MET DST) Received: from rich by aomori.annexia.org with local (Exim 3.36 #1 (Debian)) id 19gtWP-0003nS-00 for ; Sun, 27 Jul 2003 22:57:41 +0100 Date: Sun, 27 Jul 2003 22:57:40 +0100 To: caml-list@inria.fr Subject: [Caml-list] OCaml interface for Apache API Message-ID: <20030727215740.GA14539@redhat.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="tKW2IUtsqtDRztdT" Content-Disposition: inline User-Agent: Mutt/1.5.4i From: Richard Jones X-Loop: caml-list@inria.fr X-Spam: no; 0.00; api:01 wrappers:01 model:01 encapsulate:01 freshmeat:01 team's:01 ltd:98 ocaml:01 business:96 interface:03 perl:03 data:03 prototype:04 seems:05 apache:06 X-Attachments: type="application/octet-stream" name="mod_caml-0.01.tar.gz" Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk --tKW2IUtsqtDRztdT Content-Type: text/plain; charset=us-ascii Content-Disposition: inline There seems to be a lot of interest in real OCaml wrappers for the Apache API. I've written some test code (attached). The model is mod_perl - attempting to encapsulate all the Apache API calls. Comments etc welcome. Rich. -- Richard Jones. http://www.annexia.org/ http://freshmeat.net/users/rwmj Merjis Ltd. http://www.merjis.com/ - all your business data are belong to you. 'There is a joke about American engineers and French engineers. The American team brings a prototype to the French team. The French team's response is: "Well, it works fine in practice; but how will it hold up in theory?"' --tKW2IUtsqtDRztdT Content-Type: application/octet-stream Content-Disposition: attachment; filename="mod_caml-0.01.tar.gz" Content-Transfer-Encoding: base64 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 --tKW2IUtsqtDRztdT-- ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners