From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 030BCBB81 for ; Thu, 29 Dec 2005 21:43:37 +0100 (CET) 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 jBTKha7s006441 for ; Thu, 29 Dec 2005 21:43:36 +0100 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 VAA03234 for ; Thu, 29 Dec 2005 21:43:35 +0100 (MET) Received: from smtp112.sbc.mail.mud.yahoo.com (smtp112.sbc.mail.mud.yahoo.com [68.142.198.211]) by nez-perce.inria.fr (8.13.0/8.13.0) with SMTP id jBTKhYJB016918 for ; Thu, 29 Dec 2005 21:43:35 +0100 Received: (qmail 13591 invoked from network); 29 Dec 2005 20:43:30 -0000 Received: from unknown (HELO ?192.168.1.100?) (rftp@pacbell.net@69.230.226.66 with plain) by smtp112.sbc.mail.mud.yahoo.com with SMTP; 29 Dec 2005 20:43:30 -0000 Message-ID: <43B44A90.5070304@rftp.com> Date: Thu, 29 Dec 2005 12:44:00 -0800 From: Robert Roessler Organization: Robert's High-performance Software User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20051223 SeaMonkey/1.5a MIME-Version: 1.0 To: Caml-list Subject: Re: [Caml-list] ANNOUNCE: LablPCRE 0.9 - a PCRE binding for Objective Caml References: <43AB8E46.9010207@rftp.com> <20051229152113.GA29493@phauna.org> In-Reply-To: <20051229152113.GA29493@phauna.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at concorde with ID 43B44A78.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 43B44A76.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 pcre:01 ocaml:01 pcre:01 bindings:01 markus:01 mottl's:01 pcre-ocaml:01 posix:01 posix:01 api:01 substrings:01 invocation:01 ocaml:01 api:01 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 N. Owen Gunden wrote: > On Thu, Dec 22, 2005 at 09:42:30PM -0800, Robert Roessler wrote: >> The second public release of the LablPCRE OCaml binding for PCRE is >> now available, featuring a new "module" interface with expanded >> functionality and supporting PCRE releases 6.1 - 6.4 (current). > > What is the advantage of your PCRE bindings over Markus Mottl's > pcre-ocaml? How do they differ? At the time (mid-June 2005), Markus' package would not build properly on Windows... he invited me to contribute a fix, and in good open source style, I built my own. ;) As I was already familiar with PCRE in its "POSIX" interface guise, I was looking for a relatively simple interface... I found the sheer comprehensiveness of Markus' binding (giving access to *all* of PCRE) daunting. So, deciding that others with modest pattern-matching needs might also appreciate a simpler interface, I built LablPCRE (certainly not as a replacement, but as a small-footprint alternative). There are really only three "major" functions in LablPCRE: regcomp to compile REs, regexec to test them against input, and regmatch when all that is needed is a simple match/nomatch query (this last is my own low-resource-consumption addition - it is not included in the POSIX API). In addition, of course, there are a handful of functions for accessing the match state, errors, and/or any captured substrings from a regexec invocation. Some effort is made to make a Pcre.t value as light as possible, e.g., a reference to the tested string will only be kept if the match succeeded *and* substring capture was requested. The original release made the above (minus regmatch) available in an "object" form... subsequent experience with OCaml vernacular and idiom suggested that a "module" interface was superior, so the current release has been re-oriented to that style (with the original object interface still available). > Is there API documentation for your library on the web somewhere? Yes - in the LablPCRE-0.9.tar.gz file on the download site. :) As seems to be somewhat common in the OCaml world, there is a commented .mli file, and a README.txt with more in-depth discussions and examples. Robert Roessler roessler@rftp.com http://www.rftp.com