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.0 required=5.0 tests=AWL,SPF_NEUTRAL autolearn=disabled version=3.1.3 Received: from discorde.inria.fr (discorde.inria.fr [192.93.2.38]) by yquem.inria.fr (Postfix) with ESMTP id 65E04BC69 for ; Sat, 24 Feb 2007 12:48:13 +0100 (CET) Received: from wx-out-0506.google.com (wx-out-0506.google.com [66.249.82.228]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id l1OBmBHb007489 for ; Sat, 24 Feb 2007 12:48:12 +0100 Received: by wx-out-0506.google.com with SMTP id i26so892696wxd for ; Sat, 24 Feb 2007 03:48:11 -0800 (PST) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:reply-to:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=fTFQvX1P08Rj2ar98mBta5YKgt4SrOrDomdNlRjTupx+njbL1/GvAYWTH1yyJHNFXfar8YfoNwt5sm0Br06vzXXtitXSmF4njSiRLrFqjvHh5bozVLOMqL9+HHvi4jbBSIuvn+sZuC1QMH8I7+xQ1ODbSkbKXZgE+c6lEhDzyOY= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:reply-to:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=FKeU9Nn+fGCw9jjEJq/fnPF7Zz+4jNw0/ll/F4VnaTQ1i0yKhrNUVeehvED8t2oudSkhGSK5lqVQY8rHsoLVVX0fRrvhglsyAkk4XTacAWIEO7oOHBx8kDyJZyhVjNnpMXXusY53WDPJNC4onISxkXeYiif7ixoC6gAJR5H9PBk= Received: by 10.114.110.1 with SMTP id i1mr1467600wac.1172317690728; Sat, 24 Feb 2007 03:48:10 -0800 (PST) Received: by 10.114.211.2 with HTTP; Sat, 24 Feb 2007 03:48:10 -0800 (PST) Message-ID: <53c655920702240348s756a662fv12c1f53c972ed67e@mail.gmail.com> Date: Sat, 24 Feb 2007 12:48:10 +0100 From: "David Baelde" Reply-To: david.baelde@ens-lyon.org To: "Caml Mailing List" Subject: Re: [Caml-list] Instruction selection in the OCaml compiler: Modulesor classes? In-Reply-To: <1172285488.23720.53.camel@rosella.wigram> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <6CB0D237-F894-4AC3-BDBE-2BB484928D3C@gmail.com> <007401c75780$c87c53d0$15b2a8c0@wiko> <1172285488.23720.53.camel@rosella.wigram> X-j-chkmail-Score: MSGID : 45E025FB.002 on discorde : j-chkmail score : X : 0/20 1 0.000 -> 1 X-Miltered: at discorde with ID 45E025FB.002 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; ocaml:01 compiler:01 functor:01 functor:01 sourceforge:01 wrote:01 signatures:01 typing:01 caml-list:01 argument:02 modules:02 seems:03 module:03 module:03 structural:04 On 2/24/07, skaller wrote: > It seems like a module functor allows both anonymous > signatures (structural) and also anonymous argument > modules (structural), yet you cannot have > anonymous functor applications: you have to bind the application to > a module name. If we really had structural typing that name would > simply be an alias. Why can't we eliminate that name? *** One worthy remark here might be that side-effects can occur at functor instantiation. Then, forcing the user to think about when the instantiation occurs is useful... --David