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=3.0 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 mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id BF244BBAF for ; Thu, 26 Mar 2009 01:06:54 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: At8BAD9kyknRVcblk2dsb2JhbACVPz8BAQEBCQkKCREDrBOBB485AQMBA4NyBg X-IronPort-AV: E=Sophos;i="4.38,422,1233529200"; d="scan'208";a="23274118" Received: from rv-out-0506.google.com ([209.85.198.229]) by mail2-smtp-roc.national.inria.fr with ESMTP; 26 Mar 2009 01:06:54 +0100 Received: by rv-out-0506.google.com with SMTP id f6so2022481rvb.57 for ; Wed, 25 Mar 2009 17:06:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:cc:message-id:from:to :in-reply-to:content-type:content-transfer-encoding:mime-version :subject:date:references:x-mailer; bh=S85KOsp1XeI9+/8Fou2ur0BQUKopKjG0XusWaQsnoTE=; b=XCMPWJLBOsUql/CiCEf0NDMvkQxO3exhgBY+eQ4MWWIL/KWtIIcOA1o/jQLzFIBLio DhSqh9N+WvgC2Il+xWdE9O1c46oWcDhZHucSaQdvAALP83AGZX0Vx/OHohBBe6ceHJEE RvfJYvh/LcKpEHpucpJhvXK/4T9mMwy39jSQo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=cc:message-id:from:to:in-reply-to:content-type :content-transfer-encoding:mime-version:subject:date:references :x-mailer; b=XrHS4k7xInO2q0EzpZ3uHeNimkhqkMQuZ4bSniN+DqbnMYj/XCFbH5o3kbczvniynn X7EB8i1pIGO9mX22LrkXLedEaPykUrfdEUAEZR5bQSUNJDby3Wzfq25rneTvKtxXXyP0 0V9tPqZ8a3862cmXFC9Pwj9XAH24h7nU4w85c= Received: by 10.114.38.8 with SMTP id l8mr114880wal.203.1238026012832; Wed, 25 Mar 2009 17:06:52 -0700 (PDT) Received: from timesink.corp.631h.metaweb.com (nat08.sjc1.metaweb.com [208.68.111.103]) by mx.google.com with ESMTPS id j26sm8404599waf.24.2009.03.25.17.06.52 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 25 Mar 2009 17:06:52 -0700 (PDT) Cc: caml-list@inria.fr Message-Id: <1E1BE32F-DAB2-4942-B266-42430F8AA37E@gmail.com> From: Warren Harris To: Mauricio Fernandez - mfp@acm.org <+caml+warren+dfcc5fe769.mfp#acm.org@spamgourmet.com> In-Reply-To: <20090325232438.GW8986@NANA.localdomain> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.3) Subject: Re: [Caml-list] polymorphic variants and recursive functions (caml: to exclusive) Date: Wed, 25 Mar 2009 17:06:51 -0700 References: <20090325232438.GW8986@NANA.localdomain> X-Mailer: Apple Mail (2.930.3) X-Spam: no; 0.00; variants:01 recursive:01 warren:98 warren:98 polymorphic:01 wrote:01 abstract:01 caml-list:01 functions:01 variant:02 caml:02 parameter:02 covariant:02 annotation:02 types:05 Mauricio, Thanks for your response... On Mar 25, 2009, at 4:24 PM, Mauricio Fernandez - mfp@acm.org wrote: > The Lwt.t type is abstract and invariant since no annotation has > been given > for the type variable (you'd need it to be type +'a t): > ... > > Unfortunately, the type variable is in both variant and > contravariant position > in the definition of Lwt.t... Just to be sure I understand you... you're saying due to the definition/implementation of Lwt and the fact that the type parameter cannot be declared covariant, that what I'm trying to do with phantom types just can't work in this case. I was afraid of that. :-( Warren