From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: * X-Spam-Status: No, score=1.1 required=5.0 tests=AWL,SPF_NEUTRAL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from discorde.inria.fr (discorde.inria.fr [192.93.2.38]) by yquem.inria.fr (Postfix) with ESMTP id 1F2F1BC0A for ; Fri, 20 Apr 2007 17:17:48 +0200 (CEST) Received: from wr-out-0506.google.com (wr-out-0506.google.com [64.233.184.232]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id l3KFHkGa028599 for ; Fri, 20 Apr 2007 17:17:47 +0200 Received: by wr-out-0506.google.com with SMTP id l58so902619wrl for ; Fri, 20 Apr 2007 08:17:46 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=UMauzhjVu/hV9gSFJ4+6L4nWqb8wADNVcqSSlg1Ht72phWe1Us93JcvBdCrnT7Gj3WGfnU+5eTq4G0BYtfyIvJ5EmWFywypx8Twm/ANqiwOi5WG0Q1DhQLEXgjl0p6CGM47a/eBM4G1GUrpxvx79A3HZjeJjju4GZ368iKuOKK0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=Ezkquw6m1/cfrc8FWrnb5iE+RQYKeewrg+rOXEWZgEG1lqLN4GLBwOXojLI7wizLx/XNVnGPcvLlgdgwytJYGaq3I3LA2DhpauAB342kyScHH3VwHeswMvRrQWJP7erpQ5Qi6H0eXQvfe3dgb6PqFBfhSqrPL96pK3/4ZfgeShM= Received: by 10.114.75.1 with SMTP id x1mr1254072waa.1177082264892; Fri, 20 Apr 2007 08:17:44 -0700 (PDT) Received: by 10.114.183.4 with HTTP; Fri, 20 Apr 2007 08:17:44 -0700 (PDT) Message-ID: Date: Fri, 20 Apr 2007 17:17:44 +0200 From: "Nicolas Pouillard" To: "Caml List" , "Aleksey Nogin" Subject: Re: [Caml-list] 3.10+beta: Camlp4: AST mapping treats record labels as patterns; should they have type ident instead? In-Reply-To: <462643BD.8050309@metaprl.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <462508EC.2090302@metaprl.org> <462643BD.8050309@metaprl.org> X-j-chkmail-Score: MSGID : 4628D99A.002 on discorde : j-chkmail score : X : 0/20 1 0.000 -> 1 X-Miltered: at discorde with ID 4628D99A.002 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; camlp:01 doable:01 node:01 cvs:01 wrote:01 wrote:01 rec:01 workaround:01 caml-list:01 patt:01 patt:01 ident:02 ident:02 ast:02 binding:02 On 4/18/07, Aleksey Nogin wrote: > On 18.04.2007 01:11, Nicolas Pouillard wrote: > > > Why do you mix the old definition of PaRec with the new definition of > > ExRec. [...] > > > > For patterns there is something doable: > > > > | PaEq of Loc.t and patt and patt (* p = p *) > > Can become > > | PaEq of Loc.t and ident and patt (* i = p *) > > > > Since that node is only used with an ident on his left. > > Yes, this sounds like a good thing to do. That's now in CVS. > > For expressions it's more complex > > > Is it the same issue as the workaround discussion above - the "proper" > way to make this distinction would be to introduce a separare > rec_binding type similar, but separate from the binding one? But is it > true that the "b; b" case in the binding type is only used for records? > If so, it would seem that splitting the binding type would not result in > that much duplication. Of course, I am only starting to understand the > new setup, no I may be completely wrong here. Yes it is just used for records and objects {< f1 = e1 ; ... ; fN = eN >}. But having one more category seems heavy, I have to think more about it. -- Nicolas Pouillard