From mboxrd@z Thu Jan 1 00:00:00 1970 X-Sympa-To: caml-list@inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id p3S8LO8C029442 for ; Thu, 28 Apr 2011 10:21:25 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AmEDANgiuU1KfVK2imdsb2JhbACEUZN+jSYIFAEBAQoJDQcSBiGmeYpAgmOFJokSAQEDBoRzfQSOXIQUgQqFCjuBIoIG X-IronPort-AV: E=Sophos;i="4.64,279,1301868000"; d="vcf'?scan'208";a="93977204" Received: from mail-wy0-f182.google.com ([74.125.82.182]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 28 Apr 2011 10:21:24 +0200 Received: by mail-wy0-f182.google.com with SMTP id 23so3422150wyf.27 for ; Thu, 28 Apr 2011 01:21:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:sender:message-id:date:from:user-agent :mime-version:to:subject:references:in-reply-to:x-enigmail-version :content-type; bh=EWjJle/GE1QoQxVfVyWzED1FzpGwLYYEq0DXlsQu4k4=; b=KO07iBA4l3SuawY5KcT/hPunWIRlWMbq89Pszyt+6ddruLE66P6aUd+USnemqPAMWn oVn82ZpxoFSXh3VpvJOstP5uj+n7i3yAyQkLcoN9NyTt+h2qq9OeEHEKCkUzwtkr1bXW aLnXet2MdMQlBH1+chJQCRw8hLuhIVuKRTisU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:x-enigmail-version:content-type; b=CloS9uut1Lso+TF9pNQIjYy6eS9zzvyBLaXpUUWiSDzIEhUTcAtitFnpar/vYQ//8Y fzddhHVHtcteLXaw5I14DiNAEPBm5UjPMlQHVs78rP9P6yPqzuTxFjOXSfiDo8+k62eS cBjuwqIMJr4qZQRFOIDG8kjgC+RJMW7y6WD0U= Received: by 10.216.142.35 with SMTP id h35mr7110206wej.31.1303978884683; Thu, 28 Apr 2011 01:21:24 -0700 (PDT) Received: from [128.93.135.224] (guest-rocq-135224.inria.fr [128.93.135.224]) by mx.google.com with ESMTPS id b20sm923138wbb.50.2011.04.28.01.21.23 (version=SSLv3 cipher=OTHER); Thu, 28 Apr 2011 01:21:23 -0700 (PDT) Sender: Fabrice Le Fessant Message-ID: <4DB91692.5000305@inria.fr> Date: Thu, 28 Apr 2011 09:26:10 +0200 From: Fabrice Le Fessant User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.14) Gecko/20110223 Lightning/1.0b2 Thunderbird/3.1.8 MIME-Version: 1.0 To: caml-list@inria.fr References: <20110427204629.GA8872@yeeloong.happyleptic.org> <20110427205416.GL4023@localhost> <20110427212852.GC8872@yeeloong.happyleptic.org> <20110427215146.GD4023@localhost> <244248468.756230.1303963610378.JavaMail.root@zmbs4.inria.fr> In-Reply-To: <244248468.756230.1303963610378.JavaMail.root@zmbs4.inria.fr> X-Enigmail-Version: 1.1.2 Content-Type: multipart/mixed; boundary="------------020208040008090506030708" X-Validation-by: fabrice.le_fessant@inria.fr Subject: Re: [Caml-list] Strange behavior of mutualy recursive definitions This is a multi-part message in MIME format. --------------020208040008090506030708 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit On 04/28/2011 06:06 AM, rixed@happyleptic.org wrote: > Although "let rec f = f" is unsound and rejected as expected, > why is "let rec f : unit -> unit = f" also rejected, since it seams > trivially equivalent to "let rec f () : unit = f ()" (which is > accepted) ? Eta-conversion (transforming "let f = f into let f () = f ()") is unsound in the general case. Indeed, take for example: let f () = print_string "titi"; function () -> print_string "toto" Is "let g = f ()" equivalent to "let g () = f () ()" ? No. So, no eta-expansion is ever performed using only type information. Fabrice --------------020208040008090506030708 Content-Type: text/x-vcard; charset=utf-8; name="fabrice_le_fessant.vcf" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="fabrice_le_fessant.vcf" begin:vcard fn:Fabrice LE FESSANT n:LE FESSANT;Fabrice org:INRIA Saclay -- Ile-de-France;P2P & OCaml adr;quoted-printable:;;Parc Orsay Universit=C3=A9 ;Orsay CEDEX;;91893;France email;internet:fabrice.le_fessant@inria.fr title;quoted-printable:Charg=C3=A9 de Recherche tel;work:+33 1 74 85 42 14 tel;fax:+33 1 74 85 42 49 url:http://fabrice.lefessant.net/ version:2.1 end:vcard --------------020208040008090506030708--