From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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 1E5C4BC8C for ; Thu, 27 Jan 2005 11:04:08 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j0RA47P8005865 for ; Thu, 27 Jan 2005 11:04:07 +0100 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 LAA16679 for ; Thu, 27 Jan 2005 11:04:07 +0100 (MET) Received: from biggles.scientician.net (0x50a5bb8d.odnxx9.adsl-dhcp.tele.dk [80.165.187.141]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j0RA46hi027832 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 27 Jan 2005 11:04:07 +0100 Received: from bardur by biggles.scientician.net with local (Exim 4.43) id 1Cu6VR-0006Vz-T3; Thu, 27 Jan 2005 11:04:05 +0100 Date: Thu, 27 Jan 2005 11:04:05 +0100 From: Bardur Arantsson To: caml-list@inria.fr Subject: Announce: Ocaml-Packrat 0.1.0 Message-ID: <20050127100405.GA2170@scientician.net> Mail-Followup-To: caml-list@inria.fr Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.6i X-Miltered: at nez-perce with ID 41F8BC97.002 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 41F8BC96.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; parser:01 ocaml:01 tarball:01 sdu:01 parsers:01 grammar:01 parsing:01 parsers:01 findlib:01 ocaml:01 grammars:01 ast:01 parser:01 grammars:01 cheers:01 X-Spam-Checker-Version: SpamAssassin 3.0.0 (2004-09-13) on yquem.inria.fr X-Spam-Status: No, score=0.1 required=5.0 tests=FORGED_RCVD_HELO autolearn=disabled version=3.0.0 X-Spam-Level: Hello all, I'd like to announce the availability of version 0.1.0 of my Packrat parser generator for OCaml, unimaginatively named OCaml-Packrat. The tarball can be fecthed from http://www.imada.sdu.dk/~bardur/personal/programs/ocaml-packrat/ocaml-packrat-0.1.0.tar.bz2 The following page provides a good overview of what packrat parsers are (and how they are implemented): http://www.pdos.lcs.mit.edu/~baford/packrat/ The README includes usage notes, and an example grammar for parsing simple expressions (with precedence) is included. The following are prerequisites for building: - ExtLib>=1.3 is required, but the generated parsers do not depend on ExtLib. Removing the ExtLib dependency is one of the first things on my TODO list. - Findlib>=1.0.4 and OMake>=0.9.4 are used to build/install. You can do it without these, but you'd have to compile everything manually. The current incarnation uses OCaml itself for specifying the grammars and 'actions' and generates an ML AST with the parser module as output. The grammars are specified as lists and actions are specified using ML ASTs. See the included example for details. Finally, I should point out I haven't done any memory/time profiling yet, so the current implementation is probably quite ineffcient. Comments and suggestions welcomed. Cheers, -- Bardur Arantsson - Oh, I always feared he would run off like this! Why...? WHY...? WHY didn't I break his legs? Professor Farnsworth | Futurama