From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id B52A6BC84 for ; Tue, 26 Apr 2005 13:15:52 +0200 (CEST) Received: from shiva.jussieu.fr (shiva.jussieu.fr [134.157.0.129]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j3QBFqub019480 for ; Tue, 26 Apr 2005 13:15:52 +0200 Received: from hydrogene.pps.jussieu.fr (hydrogene.pps.jussieu.fr [134.157.168.1]) by shiva.jussieu.fr (8.12.11/jtpda-5.4) with ESMTP id j3QBFqoj037072 for ; Tue, 26 Apr 2005 13:15:52 +0200 (CEST) X-Ids: 166 Received: from hydrogene.pps.jussieu.fr (localhost.localdomain [127.0.0.1]) by hydrogene.pps.jussieu.fr (8.13.3/jtpda-5.4) with ESMTP id j3QBFp36030663 for ; Tue, 26 Apr 2005 13:15:51 +0200 Received: from localhost (verlague@localhost) by hydrogene.pps.jussieu.fr (8.13.3/8.13.2/Submit) with ESMTP id j3QBFpW6030660 for ; Tue, 26 Apr 2005 13:15:51 +0200 Date: Tue, 26 Apr 2005 13:15:51 +0200 (CEST) From: Julien Verlaguet To: caml-list@yquem.inria.fr Subject: Type inference question Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-1.7.2 (shiva.jussieu.fr [134.157.0.166]); Tue, 26 Apr 2005 13:15:52 +0200 (CEST) X-Antivirus: scanned by sophie at shiva.jussieu.fr X-Miltered: at concorde with ID 426E22E8.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at shiva.jussieu.fr with ID 426E22E8.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; inference:01 myfun:01 stdin:01 pervasives:01 bool:01 myfun:01 marshal:01 pps:01 jussieu:01 let:03 let:03 channel:06 definition:07 function:08 res:08 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.2 X-Spam-Level: I have the following function definition : let myfun param= let res=Marshal.from_channel stdin [] in if res=param then res else res ;; Since the type of "Pervasives.=" is "'a -> 'a -> bool", I was expecting : myfun : 'a -> 'a I got instead : myfun : 'a -> 'b Is it normal ?