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 1C8A4BCAD for ; Sat, 14 May 2005 23:53:59 +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 j4ELrwuC003183 for ; Sat, 14 May 2005 23:53:58 +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 XAA17430 for ; Sat, 14 May 2005 23:53:58 +0200 (MET DST) Received: from wproxy.gmail.com (wproxy.gmail.com [64.233.184.207]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j4ELrv69014634 for ; Sat, 14 May 2005 23:53:57 +0200 Received: by wproxy.gmail.com with SMTP id 69so1204278wri for ; Sat, 14 May 2005 14:53:57 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:references; b=DH/Q6AB7bm24co3bCvX9OKbS5xDvIeUgX80PP0E6HOM/V4mVlQX/86cVq7emuwaZGWj+T03sOOlZVrA3JP7KNlD2sSQRaQ6sI6Ogh4nHb8eHomgNVdgtBq0MWzIPeh02CKxjMJc2XbbGoIuUcywgV++Rgx07m9JpPXKwl0fP2FE= Received: by 10.54.49.9 with SMTP id w9mr2553650wrw; Sat, 14 May 2005 14:53:57 -0700 (PDT) Received: by 10.54.80.17 with HTTP; Sat, 14 May 2005 14:53:56 -0700 (PDT) Message-ID: <2a1a1a0c05051414532ff0a9c6@mail.gmail.com> Date: Sat, 14 May 2005 17:53:57 -0400 From: Mike Lin Reply-To: mikelin@mit.edu To: Richard Jones Subject: Re: [Caml-list] More on SOAP Cc: caml-list@inria.fr In-Reply-To: <20050513220936.GA7588@furbychan.cocan.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_13233_17916230.1116107637006" References: <20050513220936.GA7588@furbychan.cocan.org> X-Miltered: at concorde with ID 42867376.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 42867375.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 trivial:01 ocaml:01 parsing:01 mli:01 val:01 val:01 mli:01 tarball:01 ocaml:01 pxp:01 ocamlnet:01 pcre:01 notepad:01 caml-list:01 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on yquem.inria.fr X-Spam-Status: No, score=0.1 required=5.0 tests=HTML_30_40,HTML_MESSAGE, RCVD_BY_IP autolearn=disabled version=3.0.2 X-Spam-Level: ------=_Part_13233_17916230.1116107637006 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Since no one else has said anything, let me say this is the kind of=20 lightweight approach that makes standards people foam at the mouth, but tha= t=20 everyone else actually wants to use, since it can be made fast, bug-free,= =20 and without depending on a zillion other things (although you are getting= =20 there :) Keep going. Mike On 5/13/05, Richard Jones wrote: >=20 > I've written a very trivial SOAP client in pure OCaml. I'm interested > in what people think about the approach I've used. >=20 > Instead of parsing WSDL, what I'm doing is allowing you to define the > interface as a familiar .mli file, as in the example below: >=20 > ---------------------------------------------------------------------- > type campaign =3D { > dailyBudget : int; > id : int; > name : string; > } >=20 > val hello : string -> string > val goodbye : string -> string > val concat : string -> string -> string > val show : campaign -> unit > ---------------------------------------------------------------------- >=20 > The .mli file is then parsed using camlp4 macros and converted into > stub functions. These can be called, and generate real SOAP calls to > the remote SOAP server. >=20 > I have a very early, experimental package for people to play with. > This tarball contains a Perl server (based on SOAP::Lite) and the > OCaml client. >=20 > http://annexia.org/tmp/simplesoap-0.0.1.tar.gz >=20 > It requires PXP, ocamlnet, equeue and PCRE. >=20 > Any type of feedback is very welcome. >=20 > Rich. >=20 > -- > Richard Jones, CTO Merjis Ltd. > Merjis - web marketing and technology - http://merjis.com > Team Notepad - intranets and extranets for business -=20 > http://team-notepad.com >=20 > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs > ------=_Part_13233_17916230.1116107637006 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Since no one else has said anything, let me say this is the kind of lightweight approach that makes standards people foam at the mouth, but that everyone else actually wants to use, since it can be made fast, bug-free, and without depending on a zillion other things (although you are getting there :)

Keep going.

Mike

On 5/13/05, Richard Jones <rich@= annexia.org> wrote:
I've written a very trivial SOAP client in pure OCaml.  I'm inter= ested
in what people think about the approach I've used.

Instead = of parsing WSDL, what I'm doing is allowing you to define the
interface = as a familiar .mli file, as in the example below:

-------------------------------------------------------------------= ---
type campaign =3D {
  dailyBudget : int;
  = ;id : int;
  name : string;
}

val hello : string -&g= t; string
val goodbye : string -> string
val concat : string -> string -> string
val show : campaign -&= gt; unit
---------------------------------------------------------------= -------

The .mli file is then parsed using camlp4 macros and convert= ed into
stub functions.  These can be called, and generate real SOAP = calls to
the remote SOAP server.

I have a very early, experimenta= l package for people to play with.
This tarball contains a Perl server (= based on SOAP::Lite) and the
OCaml client.

http://annexia.org/tmp/simplesoap-0.0.1.tar.gz

It requi= res PXP, ocamlnet, equeue and PCRE.

Any type of feedback is very wel= come.

Rich.

--
Richard Jones, CTO Merjis Ltd.
Merjis - web m= arketing and technology - http://merjis.com
Team Notepad - intranets and extranets for business -
http://team-notepad.com

________________________________________= _______
Caml-list mailing list. Subscription management:
http://yquem.inria= .fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr=
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

------=_Part_13233_17916230.1116107637006--