caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: jeanmarc.eber@lexifi.com
To: Alessandro Baretta <alex@baretta.com>
Cc: ocaml <caml-list@inria.fr>
Subject: Re: [Caml-list] On the equality of functional values
Date: Mon, 28 Oct 2002 09:34:13 +0100 (MET)	[thread overview]
Message-ID: <1035794053.3dbcf6850fd90@imp.pro.proxad.net> (raw)
In-Reply-To: <3DBCD600.2000307@baretta.com>

documentation from pervasives.mli (3.06): 
 
Look, in particular, at the use of the word "may": 
 
external ( = ) : 'a -> 'a -> bool = "%equal" 
(** [e1 = e2] tests for structural equality of [e1] and [e2]. 
   Mutable structures (e.g., references and arrays) are equal 
   if and only if their current contents are structurally equal, 
   even if the two mutable objects are not the same physical object. 
   Equality between functional values may raise [Invalid_argument]. 
   Equality between cyclic data structures may not terminate. *) 
 
Jean-Marc Eber 
 
 
Quoting Alessandro Baretta <alex@baretta.com>: 
 
>  
>  
> David Monniaux wrote: 
> > On Sun, 27 Oct 2002, Alessandro Baretta wrote: 
> >  
> >  
> > If I remember well, = is implemented by doing first a == (equality of 
> > pointers) test, and returning true if that test succeeds; otherwise, 
> > the more complex recursive equality test is performed, which fails 
> with 
> > an exception if it encounters functional values. 
> >  
> > So if x and y are the same closure, x=y succeeds and yields the true 
> > value. Otherwise, it throws an exception. 
>  
> This is what I suspected. I wonder if this behavior conforms  
> to specification, or if it is an incidental concequence of  
> the implementation of (=). 
>  
> Alex 
>  
> ------------------- 
> 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 
>  
-------------------
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


  reply	other threads:[~2002-10-28  8:34 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-10-27 14:10 Alessandro Baretta
2002-10-27 15:34 ` David Brown
2002-10-27 17:58 ` David Monniaux
2002-10-28  6:15   ` Alessandro Baretta
2002-10-28  8:34     ` jeanmarc.eber [this message]
2002-10-29 10:32     ` Pierre Weis
2002-10-27 18:02 ` Remi VANICAT

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1035794053.3dbcf6850fd90@imp.pro.proxad.net \
    --to=jeanmarc.eber@lexifi.com \
    --cc=alex@baretta.com \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).