From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by yquem.inria.fr (Postfix) with ESMTP id CE1D1BC57 for ; Sat, 4 Dec 2010 21:22:29 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArYAALcx+kzRVditkGdsb2JhbACjJQgVAQEBAQkJDAcRBB6lR4lpghmECS6IVgEBAwWFRASKboYF X-IronPort-AV: E=Sophos;i="4.59,299,1288566000"; d="scan'208";a="91282443" Received: from mail-qy0-f173.google.com ([209.85.216.173]) by mail1-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-MD5; 04 Dec 2010 21:22:29 +0100 Received: by qyk1 with SMTP id 1so2138969qyk.18 for ; Sat, 04 Dec 2010 12:22:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:cc:content-type; bh=knbHs8bbyxECQUcDA+1LftFM51ZxaKFKaEVNZ64frZA=; b=NB7HnCr0hZraOT8VKhGiXOSJMJBc0SblucB5+WEWB1h3qwesWh+xS9U8wcjfIf0rZf 3ke8Q5IBxfi9OcZyl7gmqmBgLKCl4bSMJYKjSBXFX95rzfZ70F8n95TSanPXvgsY+vhJ BYRPbNhFZRBVnQ/0P4zT5QBOhkKbzk6n9qs0M= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; b=cLcGqErhl25Ibhw08yUmQz1JBWM2uC2kfxMkfXAUfVlcDGyqB8Ocm9gt+3gDJRMl2F fV7S9PFPOjCoYwd7HG68xxn5Y2pgFKukGuW6CzfK0+sDG+c0S9dJ4nGO93UATJuHvDuY ULJPwG7WL63ftWQLQkU16qFkwuVZskmgIqUBw= Received: by 10.229.217.133 with SMTP id hm5mr2601653qcb.258.1291494147839; Sat, 04 Dec 2010 12:22:27 -0800 (PST) MIME-Version: 1.0 Received: by 10.229.230.149 with HTTP; Sat, 4 Dec 2010 12:22:07 -0800 (PST) In-Reply-To: References: From: Lukasz Stafiniak Date: Sat, 4 Dec 2010 21:22:07 +0100 Message-ID: Subject: Re: [Caml-list] GADT constructor syntax To: Jacques Le Normand Cc: caml-list caml-list Content-Type: text/plain; charset=ISO-8859-1 X-Spam: no; 0.00; lukasz:01 syntax:01 foo:01 forall:01 foo:01 wrote:01 caml-list:01 constructor:01 constructor:01 explicitly:02 confusing:02 jacques:03 dec:05 context:06 should:13 On Sat, Dec 4, 2010 at 9:14 PM, Jacques Le Normand wrote: > > having > > type 'a t = Foo of 'a : 'b t > > creating a constructor of type forall 'a. 'a -> 'a t is really > confusing since the user explicitly gave the return type of the > constructor as 'b t. But why would the user have named 'a in the first place then. In the context of Foo, it should be assumed that 'a t = 'b t