From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 6799FBC48 for ; Thu, 28 Apr 2005 12:03:07 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j3SA37ij011231 for ; Thu, 28 Apr 2005 12:03:07 +0200 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id MAA26240 for ; Thu, 28 Apr 2005 12:03:06 +0200 (MET DST) Received: from ns.lami.univ-evry.fr (ns.lami.univ-evry.fr [195.221.162.248]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j3SA36eN024282 for ; Thu, 28 Apr 2005 12:03:06 +0200 Received: from localhost (localhost [127.0.0.1]) by ns.lami.univ-evry.fr (Postfix) with ESMTP id 1DFA12FC69; Thu, 28 Apr 2005 12:03:06 +0200 (CEST) Received: from ns.lami.univ-evry.fr ([127.0.0.1]) by localhost (ns.lami.univ-evry.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 31215-04; Thu, 28 Apr 2005 12:03:04 +0200 (CEST) Received: by ns.lami.univ-evry.fr (Postfix, from userid 284) id D9CE12FC6C; Thu, 28 Apr 2005 12:02:54 +0200 (CEST) Date: Thu, 28 Apr 2005 12:02:53 +0200 To: caml-list@inria.fr Cc: the MGS project Subject: Changes on equality between 3.06 and 3.08.3 Message-ID: <20050428100252.GF31263@lami.univ-evry.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.3.28i From: michel@lami.univ-evry.fr (Olivier Michel) X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at lami.univ-evry.fr X-Miltered: at nez-perce with ID 4270B4DB.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 4270B4DA.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; lami:01 univ-evry:01 ocaml:01 ocaml:01 val:01 bool:01 val:01 bug:01 lami:01 univ-evry:01 specif:01 umr:01 evry:01 exception:01 equality:01 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: Hi dear ocamlers, I just noticed the following change in Ocaml between release 3.06 and 3.08.3, as far as equality on records is concerned : //////////////////////////////////////////////////////////////////////////////// // //release 3.06 // dellfp-3 7 > /ocaml Objective Caml version 3.06 # type toto = { b : int -> int; } ;; type toto = { b : int -> int; } # let a = { b = (fun x -> x) } ;; val a : toto = {b = } # a = a;; - : bool = true // //release 3.08.3 // dellfp-3 8 > ocaml Objective Caml version 3.08.3 # type toto = { b : int -> int; };; type toto = { b : int -> int; } # let a = { b = (fun x -> x) } ;; val a : toto = {b = } # a = a;; Exception: Invalid_argument "equal: functional value". //////////////////////////////////////////////////////////////////////////////// Is this supposed to be a bug, or a feature ? Will future releases of Ocaml follow the new way of handling equality between records or the old one ? Best regards, Olivier. -- Olivier MICHEL Email : michel@lami.univ-evry.fr Universite d'Evry Val d'Essonne http : www.lami.univ-evry.fr/~michel Equipe Specif / Projet MGS http : mgs.lami.univ-evry.fr LaMI - UMR 8042 du CNRS Phone : +33 (0)1.60.87.39.10 523, place des terrasses de l'agora Fax : +33 (0)1.60.87.37.89 91000 Evry - FRANCE