Re: Non generalizable type of constants?

From: Pierre Weis (Pierre.Weis@inria.fr)
Date: Tue Feb 16 1999 - 08:16:34 MET


From: Pierre Weis <Pierre.Weis@inria.fr>
Message-Id: <199902160716.IAA20081@pauillac.inria.fr>
Subject: Re: Non generalizable type of constants?
To: ohl@hep.tu-darmstadt.de
Date: Tue, 16 Feb 1999 08:16:34 +0100 (MET)
In-Reply-To: <14024.25027.421367.684137@heplix4.ikp.physik.tu-darmstadt.de> from "Thorsten Ohl" at Feb 15, 99 07:04:51 pm

> > I'm not aware of any solution to your problem, except turning your
> > unit_bad identifier into a function let unit_bad () = A.atom (M.unit).
>
> Syntactically, It's not pretty, but I can live with it. I shied away
> from this because I was not sure about the result of
>
> module F = FreeRing ( some ring ...)
> compare (F.unit_bad ()) (F.unit_bad ())
>
> in this case. Does O'Caml guarantee that the expression will always
> evaluate to 0? [ Currently it appears to, but can I depend on it? ]

Yes, since constant constructors are uniquely represented.

Best regards,

Pierre Weis

INRIA, Projet Cristal, Pierre.Weis@inria.fr, http://cristal.inria.fr/~weis/



This archive was generated by hypermail 2b29 : Sun Jan 02 2000 - 11:58:19 MET