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 0146CBC2F for ; Mon, 29 Nov 2004 20:41:43 +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 iATJfg2B013505 for ; Mon, 29 Nov 2004 20:41:42 +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 UAA08022 for ; Mon, 29 Nov 2004 20:41:41 +0100 (MET) Received: from main.gmane.org (main.gmane.org [80.91.229.2]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id iATJffEI013498 for ; Mon, 29 Nov 2004 20:41:41 +0100 Received: from list by main.gmane.org with local (Exim 3.35 #1 (Debian)) id 1CYrP2-0003R9-00 for ; Mon, 29 Nov 2004 20:41:40 +0100 Received: from asado.iro.umontreal.ca ([132.204.24.84]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 29 Nov 2004 20:41:40 +0100 Received: from monnier by asado.iro.umontreal.ca with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 29 Nov 2004 20:41:40 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: caml-list@inria.fr From: Stefan Monnier Subject: Re: Strange parsing of with-clauses Date: Mon, 29 Nov 2004 14:41:32 -0500 Message-ID: References: <20041129162640.GA27030@annexia.org> <20041129.180429.38700401.andrieu@ijm.jussieu.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: asado.iro.umontreal.ca User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/21.3.50 (gnu/linux) Cancel-Lock: sha1:9WRS6IcnYewbWsX/EEw1OiNOZRI= Sender: news X-Miltered: at concorde with ID 41AB7B76.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 41AB7B75.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; umontreal:01 parsing:01 defines:01 haskell:01 constructors:01 curried:01 exception:01 exception:01 polymorphic:01 strings:01 defined:01 argument:01 variant:02 tuple:02 tuple:02 X-Spam-Checker-Version: SpamAssassin 3.0.0 (2004-09-13) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.0 X-Spam-Level: > definition. `E of string * string' defines an exception with two > arguments of type string, which has a different representation than an > exception with one argument of type "tuple of strings". The latter > should be defined as `E of (string * string)'. There's the same issue > with variant types (but not the polymorphic ones !). I think this is another place where Haskell got it right: make those constructors curried so that it's obvious that it's not carrying a tuple. Stefan