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.2 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 90CD5BC69 for ; Fri, 24 Aug 2007 23:04:44 +0200 (CEST) Received: from hu-out-0506.google.com (hu-out-0506.google.com [72.14.214.233]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id l7OL4h6q009101 for ; Fri, 24 Aug 2007 23:04:44 +0200 Received: by hu-out-0506.google.com with SMTP id 16so630350hue for ; Fri, 24 Aug 2007 14:04:43 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:received:date:to:cc:subject:message-id:mail-followup-to:references:mime-version:content-type:content-disposition:in-reply-to:user-agent:from; b=ArcR8xMumEeExxpaW4qZ0SX1CaiWsN6DVSvdpoBGQSI7XyWOAnSNx8M0vFabxaIIMj3svvm+nSMTbKf8AXzNojAFsoIPee7j3RXWrspybXyoaULTMRaRqrMnMRkiQOQq4d7Rjth5a00Uqe3nT1UTZ9NrAppja4IInGwJoKv+uGE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:date:to:cc:subject:message-id:mail-followup-to:references:mime-version:content-type:content-disposition:in-reply-to:user-agent:from; b=rsHGv6ziaxfea2GB5LopCpe2SCs7oDdQdUrWm673voaKJooj1UAVmh8cDeRsmLq4huU/kHMG2HLW8TJIY56aeUGSIWaBATLkTg4C0Ck+KBb9ZSMjoyVH9HHvWHC0FX/KDJ72wEvL8nhBNJm2V19sQWOxf69SY5liguhQ+fTMh4M= Received: by 10.82.158.12 with SMTP id g12mr7609865bue.1187989483408; Fri, 24 Aug 2007 14:04:43 -0700 (PDT) Received: from localhost ( [82.122.238.197]) by mx.google.com with ESMTPS id 35sm2346444nfu.2007.08.24.14.04.39 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 24 Aug 2007 14:04:42 -0700 (PDT) Received: by localhost (sSMTP sendmail emulation); Fri, 24 Aug 2007 23:04:43 +0200 Date: Fri, 24 Aug 2007 23:04:43 +0200 To: Christopher Kauffman Cc: caml-list@inria.fr Subject: Re: [Caml-list] Question on polymorphic typing for curried functions Message-ID: <20070824210442.GA15226@jiyu.gnu> Mail-Followup-To: Julien Moutinho , Christopher Kauffman , caml-list@inria.fr References: <46CF34DE.301@cs.umn.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <46CF34DE.301@cs.umn.edu> User-Agent: Mutt/1.5.16 (2007-06-11) From: Julien Moutinho X-j-chkmail-Score: MSGID : 46CF47EC.000 on discorde : j-chkmail score : X : 0/20 1 0.000 -> 1 X-Miltered: at discorde with ID 46CF47EC.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; curried:01 curried:01 polymorphism:01 polymorphic:01 polymorphic:01 wrote:01 faq:01 faq:01 typing:01 caml-list:01 functions:01 functions:01 caml:02 caml:02 argument:02 On Fri, Aug 24, 2007 at 02:43:26PM -0500, Christopher Kauffman wrote: > I am looking for a bit of information on the behavior of curried functions > wrt polymorphic arguments. For instance, in the following example, using a > curried function seems to lose the nice polymorphism that I desire. > [...] > Is there a set of rules or guidelines that determine when argument types > are specialized versus staying polymorphic? This may be of interest to you: http://caml.inria.fr/pub/old_caml_site/FAQ/FAQ_EXPERT-eng.html#eta_expansion