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.9 required=5.0 tests=AWL,DNS_FROM_RFC_POST, 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 mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 8A866BB84 for ; Thu, 14 Aug 2008 13:32:47 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AsUDAFS0o0jAXQIniGdsb2JhbACRPz4BAQEPIJ0AhwEBAg X-IronPort-AV: E=Sophos;i="4.32,209,1217800800"; d="scan'208";a="28217562" Received: from concorde.inria.fr ([192.93.2.39]) by mail4-smtp-sop.national.inria.fr with ESMTP; 14 Aug 2008 13:32:47 +0200 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id m7EBWjaD009684 for ; Thu, 14 Aug 2008 13:32:47 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Am8BABi0o0jRVcbulGdsb2JhbACRPz4BAQEBCQMKBxEDnHyHAQEC X-IronPort-AV: E=Sophos;i="4.32,209,1217800800"; d="scan'208";a="13988945" Received: from rv-out-0506.google.com ([209.85.198.238]) by mail2-smtp-roc.national.inria.fr with ESMTP; 14 Aug 2008 13:31:22 +0200 Received: by rv-out-0506.google.com with SMTP id k40so334142rvb.57 for ; Thu, 14 Aug 2008 04:31:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=yy7fkDeoUOIZH/4tn+sHxYzAdqZM3zyF6iC93CnAiVk=; b=UVGmtVnDZ6v/R4flcVOaqCh9Yd/gtSuxhrdxDOXmsOEFpRZj6mFc6UvgRocOGzHYj6 PS/Iz5dknrphGSO6S20Apc6++EIHNoNyo7QqjF65/l+roawZDwqnHiYcy6op+Je17rEs MMCpvJDjyxalhrN6ECcweX0anBtBnyXOU57G8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=un6wirnugv5hJWhQMR0sQhO5cU7p4CfzWe4k/HvxDVBMlLOAJWI6bPWtpYuIO4zLAU NKOz5VHc3waqNoril97bt3dYtZyCth1p6qMIReTmgV7wHG/bO3NO4VaBbqlxzHEJNwwy NjzquNB7RfX6g72h3nDKC0GLXHcNgdO5ZNlDE= Received: by 10.140.166.21 with SMTP id o21mr555324rve.254.1218713481380; Thu, 14 Aug 2008 04:31:21 -0700 (PDT) Received: by 10.140.126.17 with HTTP; Thu, 14 Aug 2008 04:31:21 -0700 (PDT) Message-ID: <4a708d20808140431gf42a0eet4b8340607296a1dc@mail.gmail.com> Date: Thu, 14 Aug 2008 13:31:21 +0200 From: "Lukasz Stafiniak" To: "Jacques Carette" Subject: Re: [Caml-list] Why is this coercion necessary? Cc: caml-list@inria.fr In-Reply-To: <4a708d20808140421q29be872dwca7c214587d4797d@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <48A395FA.2050704@mcmaster.ca> <4a708d20808140421q29be872dwca7c214587d4797d@mail.gmail.com> X-Miltered: at concorde with ID 48A417DD.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; lukasz:01 ocaml:01 syntax:01 lukasz:01 coercions:01 ocaml:01 inference:01 subtyping:01 unification:01 intersection:01 syntax:01 coerced:01 wrote:01 caml-list:01 coercion:01 Of course OCaml doesn't need to be changed, just write a syntax extension in campl4. On Thu, Aug 14, 2008 at 1:21 PM, Lukasz Stafiniak wrote: > There is no way to avoid coercions altogether: OCaml doesn't have > inference for subtyping, using unification with row variables gives > the intersection behavior. But the language could be changed, with a > syntax like > > match x return e with > | ... -> ... > | ... -> ... > > meaning that all branches should be coerced to e. >