Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] Are you sure the new "=" of 3.08 is good ?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Jean-Christophe Filliatre <Jean-Christophe.Filliatre@l...>
Subject: Re: [Caml-list] Are you sure the new "=" of 3.08 is good ?

Christophe Raffalli writes:
 > 
 > I spend one complete day to adapt Phox (my theorem prover) to 3.08
 > because the new = does not check first physical equality. 

Indeed, and it was mentioned in Ocaml 3.08 changes:

======================================================================
* Revised handling of NaN floats in polymorphic comparisons.
  The polymorphic boolean-valued comparisons (=, <, >, etc) now treat
  NaN as uncomparable, as specified by the IEEE standard.
  The 3-valued comparison (compare) treats NaN as equal to itself
  and smaller than all other floats.  As a consequence, x == y
  no longer implies x = y but still implies compare x y = 0.
======================================================================

but Pervasives.compare still checks for physical equality first. It's
clear when having a look at byterun/compare.c.

-- 
Jean-Christophe

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners