From: Pierre Weis <Pierre.Weis@inria.fr>
Subject: Re: Non generalizable type of constants?
Date: Tue, 16 Feb 1999 08:16:34 +0100 (MET)
In-Reply-To: <email@example.com> 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.
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