From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id q479ef16030964 for ; Mon, 7 May 2012 11:40:41 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ar8GABOYp09iiyyDZmdsb2JhbABEgkawUQ0IDAcWJ4IDCQEBBEEBAQEBNgEDGQGJMQEDBgWnFYQxAQWEIgJIBYlUAQaNeYMmiGiEWIhJhW8tjSg X-IronPort-AV: E=Sophos;i="4.75,543,1330902000"; d="scan'208,217";a="157024808" Received: from nm4.access.bullet.mail.sp2.yahoo.com ([98.139.44.131]) by mail1-smtp-roc.national.inria.fr with SMTP; 07 May 2012 11:40:35 +0200 Received: from [98.139.44.102] by nm4.access.bullet.mail.sp2.yahoo.com with NNFMP; 07 May 2012 09:40:34 -0000 Received: from [98.139.44.76] by tm7.access.bullet.mail.sp2.yahoo.com with NNFMP; 07 May 2012 09:40:34 -0000 Received: from [127.0.0.1] by omp1013.access.mail.sp2.yahoo.com with NNFMP; 07 May 2012 09:40:34 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 82590.5715.bm@omp1013.access.mail.sp2.yahoo.com Received: (qmail 10084 invoked by uid 60001); 7 May 2012 09:40:33 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=att.net; s=s1024; t=1336383633; bh=4SqOrZ6IMSiBtCv/7csutHlMh+KgpPWsoDHcM5HDE4Q=; h=X-YMail-OSG:Received:X-Mailer:Message-ID:Date:From:Subject:To:MIME-Version:Content-Type; b=CZ2f32wTUMljIaMwQL5x4m5KXg6xtmlLL3J6chl8d3hlBvq3AT42/Mj9rmn/KnK9x79Fd0BHeIWIQjFqCgSE46jtuoLLIjNRUa3iPTAXPwpfJ+jzdoKpYV1C8ncbFe88LKzZ0yIZZqPtW12S6e50igx5WgKmHPxptfAFOoDY7GM= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=att.net; h=X-YMail-OSG:Received:X-Mailer:Message-ID:Date:From:Subject:To:MIME-Version:Content-Type; b=kvB7rgoYzQDZy7lQLY9Vh4FychKmv9RNPrNHlv9pIrrsqdM8j9XFgoXoInK0gS7jI3ZTddCS+NY+jHPlH5uUHRyzX9hgkrLbtOFbPb+ob8N4nAb8QN2o9GFbffcUBVHTUG84QqzFuBsvAI8tMxWoTy7D/P/0coYoxl3+bSHL5P0=; X-YMail-OSG: DcrGwtYVM1nE5.4g5moNv9rBmH79NCxvRTviL_SFnAZUS9P H8kVCkhGINGUrbF.2Sr7lvPJOAwwnb43Lbd66ulTBNYMBzRV7WQc6EAR8mBZ aW.qaK2J7Jg5r03ltKNMembzPz6zl531H6AZT2WP32q8SVK5kEpkfKSbIT9E O4bX.6vFOa3_NLhsbwplWr0j2ZMwv0zx6mb_tjZunZZiQ6qRbpnzC4ZxdsNU 0kTcxL7OlEHN67mO1GtU_nF9rZM3aAmFV3cxVLqJNs1nzi_7V.lFLnmJFBNQ rDrHT5nzsqFkO6jL07hYRnlsQRT9R5emawHMDwhGm.GF.Qi27rRZMhQjAl.s 4o8EIqSh22pbjxU2xEZUdPt6T6h.LOM2Hiye0AqPgLyoPHoLa7wjNnyQthNT JlDAkFcd.R3acrbvnaMHOytLFd0Zdz52862P1aGbf3Qjt Received: from [70.225.163.92] by web180006.mail.gq1.yahoo.com via HTTP; Mon, 07 May 2012 02:40:33 PDT X-Mailer: YahooMailRC/708 YahooMailWebService/0.8.117.340979 Message-ID: <1336383633.2612.YahooMailRC@web180006.mail.gq1.yahoo.com> Date: Mon, 7 May 2012 02:40:33 -0700 (PDT) From: Dan Bensen To: caml-list@inria.fr MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="-729476438-711498962-1336383633=:2612" Subject: [Caml-list] extending user-defined polymorphic variant types ---729476438-711498962-1336383633=:2612 Content-Type: text/plain; charset=us-ascii I'm trying to write a functor that extends a user-supplied polymorphic variant type (PVT). How do you declare the user's type in the signature for the argument to the functor without locking in the individual variant definitions? The code below (in revised syntax) generates an error message that says the type isn't a PVT. code: > module type Reader = sig type ast; end; > > module Make (Read: Reader) = struct > type ast = [= Read.ast | `Lid of string]; > end; message: > Error: The type Read.ast is not a polymorphic variant type How do you make ast a PVT while allowing the user to specify the variants? ---729476438-711498962-1336383633=:2612 Content-Type: text/html; charset=us-ascii

I'm trying to write a functor that extends a user-supplied polymorphic
variant type (PVT).  How do you declare the user's type in the signature
for the argument to the functor without locking in the individual variant
definitions? 
The code below (in revised syntax) generates an error message that says
the type isn't a PVT.

code:

> module type Reader = sig type ast; end;
>
> module Make (Read: Reader) = struct
>   type ast = [= Read.ast | `Lid of string];
> end;

message:

> Error: The type Read.ast is not a polymorphic variant type

How do you make ast a PVT while allowing the user to
specify the variants?
---729476438-711498962-1336383633=:2612-- From mboxrd@z Thu Jan 1 00:00:00 1970 X-Sympa-To: caml-list@inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id q47BbkDA002303 for ; Mon, 7 May 2012 13:37:46 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AsMBAAGzp0/RVdy2kmdsb2JhbABEFoIwpw8BiToqAQEBAQkLCwcSKYIMAQEBAgEBEgIsARsYBQEDAQsGBQQHOyIBEQEFARwGEyKHXQEDBgULnB4JA4wkgnOEPgoZJwUIV4h2AQULkRQElX6BEY1RPYQO X-IronPort-AV: E=Sophos;i="4.75,543,1330902000"; d="scan'208";a="142821298" Received: from mail-vc0-f182.google.com (HELO mail-vx0-f182.google.com) ([209.85.220.182]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 07 May 2012 13:37:40 +0200 Received: by vcbfy7 with SMTP id fy7so419736vcb.27 for ; Mon, 07 May 2012 04:37:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=adIhWFSQNXtlqOdn3Qct4ogdkK3ZByi01a0JxSrk/d4=; b=esvSax+XUblI6AKH1Ew6hWsG55V7pT/W6bfOeN8Til1f2NroExRQawJYcmJ3pZbchU tun7BZmUgC8I5MbrT1/qJh/vODDRdsiSvhfU6Q+TzTGHJeHU88BMAiGSbr9DC45kyStu DgUTRrxakFI5jlz7mVKon908xDUOK4yUIvUqQrwtQxZCzi/eHD8Hbbq/gm23/vPs3O7D kBvZhZcZG94gN1+XOHpjkpSjh3Fudw4oUtE4HcSRhiBflF+ld+WKS+dviiDLi9belX34 ISvYsDuFwmKTBCUywNk5NBst1hglulyP2p4vsEXX0g37pplyoEgFR0n/pH3+w3ZFRoP3 ykuw== Received: by 10.52.67.19 with SMTP id j19mr7277827vdt.46.1336390659809; Mon, 07 May 2012 04:37:39 -0700 (PDT) MIME-Version: 1.0 Received: by 10.52.188.1 with HTTP; Mon, 7 May 2012 04:37:19 -0700 (PDT) In-Reply-To: <1336383633.2612.YahooMailRC@web180006.mail.gq1.yahoo.com> References: <1336383633.2612.YahooMailRC@web180006.mail.gq1.yahoo.com> From: Philippe Veber Date: Mon, 7 May 2012 13:37:19 +0200 Message-ID: To: Dan Bensen Cc: caml-list@inria.fr Content-Type: multipart/alternative; boundary=20cf307f3a468f201004bf70b277 X-Validation-by: philippe.veber@gmail.com Subject: Re: [Caml-list] extending user-defined polymorphic variant types --20cf307f3a468f201004bf70b277 Content-Type: text/plain; charset=ISO-8859-1 Hi Dan, I'm afraid you can't. If you want to write unions of polymorphic variant types, they have to be concrete and not abstract. See Romain Bardou's work on this: http://romain.bardou.fr/papers/stage2006p.pdf Or, if you can read french: www.math.nagoya-u.ac.jp/~garrigue/papers/index.html (see Unions de variants polymorphes abstraits). Cheers, Philippe. 2012/5/7 Dan Bensen > > I'm trying to write a functor that extends a user-supplied polymorphic > variant type (PVT). How do you declare the user's type in the signature > for the argument to the functor without locking in the individual variant > definitions? > The code below (in revised syntax) generates an error message that says > the type isn't a PVT. > > code: > > > module type Reader = sig type ast; end; > > > > module Make (Read: Reader) = struct > > type ast = [= Read.ast | `Lid of string]; > > end; > > message: > > > Error: The type Read.ast is not a polymorphic variant type > > How do you make ast a PVT while allowing the user to > specify the variants? > --20cf307f3a468f201004bf70b277 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hi Dan,

I'm afraid you can't. If you want to write unions of= polymorphic variant types, they have to be concrete and not abstract. See = Romain Bardou's work on this:

http://romain.bardou.fr/papers/stage2006p.pdf
Or, if you can read french:

www.math.nagoya-u.ac.jp/~garrigue/papers= /index.html

(see Unions de variants polymorphes abstraits).

Cheers,
=A0 Philippe.



2012= /5/7 Dan Bensen <danbensen@att.net>

I'm trying to write a functor that extends= a user-supplied polymorphic
variant type (PVT).=A0 How do you declare = the user's type in the signature
for the argument to the functor without locking in the individual variant <= br>definitions?=A0
The code below (in revised syntax) generates an erro= r message that says
the type isn't a PVT.

code:

> m= odule type Reader =3D sig type ast; end;
>
> module Make (Read: Reader) =3D struct
> =A0 type ast =3D= [=3D Read.ast | `Lid of string];
> end;

message:

> Error: The type Read.ast is not a polymorphic variant type

= How do you make ast a PVT while allowing the user to
specify the varian= ts?

--20cf307f3a468f201004bf70b277-- From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id q47GlnMH015641 for ; Mon, 7 May 2012 18:47:49 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AsMBAPL7p0/ZSMDdkWdsb2JhbABEsxwiAQEBAQkLCwcUAySCDAEBBAEnEz8FCwshJQ8BBCghE4d/AQMGCbB7HysFiVuRHwSbYY1K X-IronPort-AV: E=Sophos;i="4.75,544,1330902000"; d="scan'208";a="157083025" Received: from fmmailgate01.web.de ([217.72.192.221]) by mail1-smtp-roc.national.inria.fr with ESMTP; 07 May 2012 18:47:44 +0200 Received: from moweb002.kundenserver.de (moweb002.kundenserver.de [172.19.20.108]) by fmmailgate01.web.de (Postfix) with ESMTP id 4821C1ADF7052 for ; Mon, 7 May 2012 18:47:44 +0200 (CEST) Received: from frosties.localnet ([95.208.118.96]) by smtp.web.de (mrweb001) with ESMTPA (Nemesis) id 0MQvxm-1Safhp3DHq-00ULnH; Mon, 07 May 2012 18:47:44 +0200 Received: from mrvn by frosties.localnet with local (Exim 4.77) (envelope-from ) id 1SRR66-00063c-IR; Mon, 07 May 2012 18:47:42 +0200 From: Goswin von Brederlow To: Dan Bensen Cc: caml-list@inria.fr References: <1336383633.2612.YahooMailRC@web180006.mail.gq1.yahoo.com> Date: Mon, 07 May 2012 18:47:42 +0200 In-Reply-To: <1336383633.2612.YahooMailRC@web180006.mail.gq1.yahoo.com> (Dan Bensen's message of "Mon, 7 May 2012 02:40:33 -0700 (PDT)") Message-ID: <877gwokkep.fsf@frosties.localnet> User-Agent: Gnus/5.110009 (No Gnus v0.9) XEmacs/21.4.22 (linux, no MULE) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Provags-ID: V02:K0:Wra7AcwgE6Jq+M1S5noUlGTtB50E5pPw/Ab9KX2teS7 Yx7CxvOeTR6lrsnBp5AsMx9g/VSKVxyFj/8iiZJRgs/Aga1C2Z Y4iENThd4z9c1v0DH5ZkKKv66L3ew4IC76z+HBkhdNWQxhesfB rg5G7gB7NFzrjuArzlADQzdrNZfn69zwbrFVCH65ThtQ+Ic6q+ x2RC11DsoOC5GSAqnDQUw== Subject: Re: [Caml-list] extending user-defined polymorphic variant types Dan Bensen writes: > I'm trying to write a functor that extends a user-supplied polymorphic > variant type (PVT). How do you declare the user's type in the signature > for the argument to the functor without locking in the individual variant > definitions? > The code below (in revised syntax) generates an error message that says > the type isn't a PVT. > > code: > >> module type Reader = sig type ast; end; >> >> module Make (Read: Reader) = struct >> type ast = [= Read.ast | `Lid of string]; >> end; > > message: > >> Error: The type Read.ast is not a polymorphic variant type > > How do you make ast a PVT while allowing the user to > specify the variants? Even if that did work how usefull would that be? You couldn't write let foo = function | `Lid s -> () | x -> Read.foo x unless Read.foo allows [> Read.ast]. In which case you don't need a functor but can just implement foo straight up. What is your use case? What do you want to do? MfG Goswin From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id q47ItGh3018700 for ; Mon, 7 May 2012 20:55:16 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ah8KAHMZqE9iiyxfWmdsb2JhbABEgkawcQEWCQwHEymCAwkBAQQBQAEBAQE1AQEDCwsDAUJDFAaIEgEDBgWnQYQxAQWFAQJIBYlUAQaRCIhohFiISYEKhGUthR+ICQ X-IronPort-AV: E=Sophos;i="4.75,545,1330902000"; d="scan'208,217";a="157092804" Received: from nm1-vm1.access.bullet.mail.sp2.yahoo.com ([98.139.44.95]) by mail1-smtp-roc.national.inria.fr with SMTP; 07 May 2012 20:55:10 +0200 Received: from [98.139.44.97] by nm1.access.bullet.mail.sp2.yahoo.com with NNFMP; 07 May 2012 18:55:09 -0000 Received: from [98.139.44.80] by tm2.access.bullet.mail.sp2.yahoo.com with NNFMP; 07 May 2012 18:55:09 -0000 Received: from [127.0.0.1] by omp1017.access.mail.sp2.yahoo.com with NNFMP; 07 May 2012 18:55:09 -0000 X-Yahoo-Newman-Property: ymail-5 X-Yahoo-Newman-Id: 699278.34827.bm@omp1017.access.mail.sp2.yahoo.com Received: (qmail 55953 invoked by uid 60001); 7 May 2012 18:55:09 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=att.net; s=s1024; t=1336416909; bh=fSFn5+icvWgdwMpqxWfX8RRyN4FLk/TpUjjOBpyduFk=; h=X-YMail-OSG:Received:X-Mailer:References:Message-ID:Date:From:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type; b=eTugbZyVgxmHQUOh/6xUpvvE6rKs+Q+sW1x1rSPaKny6rGzhgYxtxLYWGmRa+CcjigYsALmXU+BRHJQ0+Irv609bswpY1WQOhhEoZYzf8/+Fe4HV8AuEM+DzBC8baXr1gTy8PogZxHWw6/buLJqFMc3R3P/DtGCPsYsFlFU6wH0= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=att.net; h=X-YMail-OSG:Received:X-Mailer:References:Message-ID:Date:From:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type; b=qcxg/84A7/yo4I90Ff9qvtF3JcZH0oPfdBU3U86s5797xMckSNAvYhZCWBtxxcP1Gl4gcYB10C71hqSTEPDvXG8xcdaAuIWN1BAoAngXcqV/nKQ3XSQugCcQ8SHSBk30s4B8EjZeUDsvVc+1MHAXtxIHRCsgv/Dw9f/LjP7tapY=; X-YMail-OSG: tFPHwnAVM1koE9R83U9LUn.evjbMmsb9D.uypyEFyYmx3Dg qNhpayArlVJcc0FDe1VXb9IMA7ifgSSUxwkErnNFGb_OVnv2Mliyogjq9Pp3 byKakje0Yi0qQeutEEfZ8rDGgI2JjhICfJCPz9Dy4zMNZrDvdYENzp1pcuNH j4EsYwcFaqTHA1wiDY39F0Ye7j3pREwY.Fq5pF_BCNnX9sZ9Wrv7vkhZAodF WUKeyixmG.0Vs6kGN6NZWkMnKktfkcEHxtKtQ4UICQIZW1qHa0LDAcGXtxfR OIbgY2bnvw7W45z8I5eoYLrFdc_Dn8tssV7QoghN7gN7m.q8ZQcI7XzET07E 1FzGTHt_c2NywZtTdwa1BL8BHXYjeuZ7BKmjR7U.dXvrdmBB4WujHs3HhA9C RTuejuifvQ.TslflX2k9tsfjOryb8mJmGUo151XwQ.M1fyvIrq3c9SrNCL.2 _LFI8lAY4iHeX1r3dUDpyXbKkVgD6.mGPB4IY3yqX4QPvm4sZuXEZXA-- Received: from [70.225.163.92] by web180012.mail.gq1.yahoo.com via HTTP; Mon, 07 May 2012 11:55:09 PDT X-Mailer: YahooMailRC/708 YahooMailWebService/0.8.117.340979 References: <1336383633.2612.YahooMailRC@web180006.mail.gq1.yahoo.com> <877gwokkep.fsf@frosties.localnet> Message-ID: <1336416909.25268.YahooMailRC@web180012.mail.gq1.yahoo.com> Date: Mon, 7 May 2012 11:55:09 -0700 (PDT) From: Dan Bensen To: Goswin von Brederlow Cc: caml-list@inria.fr In-Reply-To: <877gwokkep.fsf@frosties.localnet> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="62145990-244274313-1336416909=:25268" Subject: Re: [Caml-list] extending user-defined polymorphic variant types --62145990-244274313-1336416909=:25268 Content-Type: text/plain; charset=us-ascii > What is your use case? What do you want to do? I've been trying to combine camlp4 with OMeta. (http://tinlizzie.org/ometa/) The idea is to allow the user to extend the concrete syntax of the parsing system itself for parsing different kinds of data (terminals), then layer the standard combinator syntax on top of it. Maybe the user can define a regular variant type for terminals and the combinator ast type can wrap it in a single variant (e.g. `Reader of Read.ast). --62145990-244274313-1336416909=:25268 Content-Type: text/html; charset=us-ascii

> What is your use case? What do you want to do?

I've been trying to combine camlp4 with OMeta.
(http://tinlizzie.org/ometa/)
The idea is to allow the user to extend the concrete
syntax of the parsing system itself for parsing
different kinds of data (terminals), then layer the
standard combinator syntax on top of it. 

Maybe the user can define a regular variant type for
terminals and the combinator ast type can wrap it in
a single variant (e.g. `Reader of Read.ast).
--62145990-244274313-1336416909=:25268-- From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id q47KHeLW020271 for ; Mon, 7 May 2012 22:17:40 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArEDABstqE9iiyx2d2dsb2JhbABEgkawewEMChMUJ4IDCQEBBAFAAQEBATUBAQMLCwMBQlcGAYgRAQMGBadBhDEBBYUDAkgFiVQBBpEIiGiEWIhJhW8tjSg X-IronPort-AV: E=Sophos;i="4.75,545,1330902000"; d="scan'208,217";a="142874479" Received: from nm8-vm0.access.bullet.mail.sp2.yahoo.com ([98.139.44.118]) by mail4-smtp-sop.national.inria.fr with SMTP; 07 May 2012 22:17:34 +0200 Received: from [98.139.44.107] by nm8.access.bullet.mail.sp2.yahoo.com with NNFMP; 07 May 2012 20:17:32 -0000 Received: from [98.139.44.78] by tm12.access.bullet.mail.sp2.yahoo.com with NNFMP; 07 May 2012 20:17:32 -0000 Received: from [127.0.0.1] by omp1015.access.mail.sp2.yahoo.com with NNFMP; 07 May 2012 20:17:32 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 921709.91741.bm@omp1015.access.mail.sp2.yahoo.com Received: (qmail 52514 invoked by uid 60001); 7 May 2012 20:17:32 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=att.net; s=s1024; t=1336421852; bh=nYNzC2O6LQ0EE0mBh/iP9KvTAGNWPFp90T6rYKvBfVw=; h=X-YMail-OSG:Received:X-Mailer:References:Message-ID:Date:From:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type; b=z1pl4sTiRIH/jLuoP665ODIwATbWIep3j+3PSZihKxt957hDW+ZD7uMGTjmf06APcM2SQOjNt9tVfTAVQDBNPM2p3jOY48g8iOujuRmXPZpUGMNiMiMe5DKlY06vgNcAIGx8I+HQHkA0NcnODMsothwxMawg9Gzx7Jz6Km0XQ6A= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=att.net; h=X-YMail-OSG:Received:X-Mailer:References:Message-ID:Date:From:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type; b=zMBwgZhsvspIasaFSCDuA1vTGNRJA+iZDe9uImRqWWjqVScEIa3IWY5LVp86jm2Vf8WjDDPP8xiUmLwai/9zvruHRVuecxnD3AaLZlShAS/bDAXuYPhfq3BXYK7LhxkzML4Z3fGG0UiNaSoW93RvTf/vb+izjI4NELnCzUiaYoQ=; X-YMail-OSG: .oC6gFQVM1lTTb12Uz4TYI1sZ4TFyTk8M5hF8Pr4b4VDR4D WsDSRZQTetdXME6e9KhyC2BPyFo56th7XbiC5_eCKMmBMhkdZlw_DK0q9Sp3 yrpXLkUxhjOxrXrPTw14cVReYGuHJoqnjk6iH5LOMWbVuR9Vr2tXTST_dBSu yxcL3JcMNvDQRyabzbiXrIzZS2KAbbDaI2zhx1_rCULXurPMm3_WB53o9U72 yr74ZVHH6COG25WrGg85.4ZILvyOue9BEvt3sMv8J6E9RlWba6UviZBHsY3I Tbc.jjQ3l4bih0eyDHK9B5_Prq4A7JLK51V34u4hcjCqGNtq610EgX9aTlWf 9ejSqgzVnjbNCUzWT5TOxfA34anvDmGT7LehWri58xDZ2_Bki4XMHKTQaUbp .XEiRw5ldawBZjux689QOIg2qYylFpbiUziZJK00TYu0X Received: from [70.225.163.92] by web180016.mail.gq1.yahoo.com via HTTP; Mon, 07 May 2012 13:17:32 PDT X-Mailer: YahooMailRC/708 YahooMailWebService/0.8.117.340979 References: <1336383633.2612.YahooMailRC@web180006.mail.gq1.yahoo.com> <877gwokkep.fsf@frosties.localnet> <1336416909.25268.YahooMailRC@web180012.mail.gq1.yahoo.com> Message-ID: <1336421852.12778.YahooMailRC@web180016.mail.gq1.yahoo.com> Date: Mon, 7 May 2012 13:17:32 -0700 (PDT) From: Dan Bensen To: Dan Bensen , Goswin von Brederlow Cc: caml-list@inria.fr In-Reply-To: <1336416909.25268.YahooMailRC@web180012.mail.gq1.yahoo.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="-831922420-766043115-1336421852=:12778" Subject: Re: [Caml-list] extending user-defined polymorphic variant types ---831922420-766043115-1336421852=:12778 Content-Type: text/plain; charset=us-ascii > extend the concrete syntax of the parsing system > itself for parsing different kinds of data (terminals), > then layer the standard combinator syntax on top of it. That last part should read "layer the standard combinator ast on top of the reader ast." ---831922420-766043115-1336421852=:12778 Content-Type: text/html; charset=us-ascii
> extend the concrete syntax of the parsing system
> itself for parsing different kinds of data (terminals),

> then layer the standard combinator syntax on top of it.

That last part should read "layer the standard 
combinator ast on top of the reader ast."
---831922420-766043115-1336421852=:12778--