From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 3E2E97EE5B for ; Mon, 8 Apr 2013 12:28:52 +0200 (CEST) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of tom.j.ridge@googlemail.com) identity=pra; client-ip=74.125.82.41; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="tom.j.ridge@googlemail.com"; x-sender="tom.j.ridge@googlemail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of tom.j.ridge@googlemail.com designates 74.125.82.41 as permitted sender) identity=mailfrom; client-ip=74.125.82.41; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="tom.j.ridge@googlemail.com"; x-sender="tom.j.ridge@googlemail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wg0-f41.google.com) identity=helo; client-ip=74.125.82.41; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="tom.j.ridge@googlemail.com"; x-sender="postmaster@mail-wg0-f41.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AhgCAGGbYlFKfVIpk2dsb2JhbABRgzzCJwgWDgEBAQEHCwsJFAQkgmYBATgQDgddEgEFASKIFAEDD58Cim+EOwEFg3wKGScNiVcGkmuWd4t2gzYWKYFZglY7 X-IPAS-Result: AhgCAGGbYlFKfVIpk2dsb2JhbABRgzzCJwgWDgEBAQEHCwsJFAQkgmYBATgQDgddEgEFASKIFAEDD58Cim+EOwEFg3wKGScNiVcGkmuWd4t2gzYWKYFZglY7 X-IronPort-AV: E=Sophos;i="4.87,429,1363129200"; d="scan'208";a="12259458" Received: from mail-wg0-f41.google.com ([74.125.82.41]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 08 Apr 2013 12:28:47 +0200 Received: by mail-wg0-f41.google.com with SMTP id y10so3561513wgg.0 for ; Mon, 08 Apr 2013 03:28:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=x-received:mime-version:sender:from:date:x-google-sender-auth :message-id:subject:to:content-type; bh=RKQRL62NiUdLCI/zm8NFJRFri1sN5Tf0rpvuIQZ6Tqg=; b=TdhLeTp8w2juhd7U9onMG+JG8aReQVSgaNepW7v3n82QyvdP4u9mwgwMTy6jqVmpIQ Sa0AzWXjfUpgOyHmAZCAOv0x89FYN0sQk+tDmdFBkoRzOWkNy7EPXZPuskIQLz6XANQW vAcXeTF5F7pZiKawbOR5N7C2Xzt1b5IUSrqIgYSo9j3p6Hmj5DCX0gaJnLNeWuAwwbir knu7Pw14c70F2oxXVJ/JbgztJXvBKdfBvIyt1zLcbd8Mvt0J+Awy0Q1pKyp1CVaKTqz1 BqwzvC/3oZT4EpEyi9PnrJKBXZVIfF9y4352eLaa1H7vrfjHj3Zbq9Mcnw1nWkWh1HL+ /0QA== X-Received: by 10.194.71.110 with SMTP id t14mr30317463wju.53.1365416927098; Mon, 08 Apr 2013 03:28:47 -0700 (PDT) MIME-Version: 1.0 Sender: tom.j.ridge@googlemail.com Received: by 10.180.38.71 with HTTP; Mon, 8 Apr 2013 03:28:27 -0700 (PDT) From: Tom Ridge Date: Mon, 8 Apr 2013 11:28:27 +0100 X-Google-Sender-Auth: qGGKgrqH3nPTasvXYIE9hwas-wA Message-ID: To: caml-list Content-Type: multipart/alternative; boundary=047d7bfd0bd6e8fb5204d9d6e615 Subject: [Caml-list] First release of P3: a combinator parser library, and parser generator --047d7bfd0bd6e8fb5204d9d6e615 Content-Type: text/plain; charset=ISO-8859-1 Dear caml-list, I'm pleased to announce the first release of the P3 combinator parser library, and parser generator. It is essentially a synthesis of Earley parsing with combinator parsing. The url is: http://www.tom-ridge.com/p3.html The main features are: * handles all context free grammars * fast (when memoized) * correct (hopefully) * simple (depending on your viewpoint) * scannerless (probably not a good idea - a separate lexing phase can result in much faster overall performance - but makes everything much simpler) * parsers implemented via combinators can be integrated easily with the core language (OCaml in this case), allowing full use of host language features eg modules etc I'm sure there is much scope for improvement, but I thought I would release it now to get feedback. Thanks Tom --047d7bfd0bd6e8fb5204d9d6e615 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Dear caml-list,

I'm plea= sed to announce the first release of the P3 combinator parser
lib= rary, and parser generator. It is essentially a synthesis of Earley
parsing with combinator parsing.






=A0 * simple (depending on your viewpoint)

=
=A0 * scannerless (probably not a good idea - a separate lexing phase<= /div>
=A0 =A0 can result in much faster overall performance - but makes=
=A0 =A0 everything much simpler)

=A0 * = parsers implemented via combinators can be integrated easily with
=A0 =A0 the core language (OCaml in this case), allowing full use of h= ost
=A0 =A0 language features eg modules etc
=A0 =A0 = =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0= =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0= =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0= =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0=A0
I'm sure there is much scope for improvement, but I thought I woul= d
release it now to get feedback.

Thanks=

Tom

--047d7bfd0bd6e8fb5204d9d6e615--