Precision of `Double's in Hugs

Mark P Jones mpj@cse.ogi.edu
Sun, 27 Jan 2002 22:35:29 -0800


Hi Liyang,

| On Mon, Jan 14, 2002 at 12:39:48AM -0800, Mark P Jones wrote:
| > Hugs uses single precision by default because the implementation
| > using double precision relies on a hack whose behavior is not
| > assured in any way by the C language in which it is implemented.
| 
| I found this in src/unix/configure.in: (all commented out)
| 
| dnl Disabled for now because the plugin-code can't handle the change.
| dnl If you're not using plugins, you could turn this on manually
| dnl by setting "USE_DOUBLE_PRECISION" in options.h.in (before running
| dnl the configure script).
| dnl AC_ARG_ENABLE(double-precision, [  --enable-double-precision 
| use double precision arithmetic],  AC_DEFINE(USE_DOUBLE_PRECISION))
| 
| Could you clarify if this is the `hack' you were referring to? (And
| are there any more? I can live with it if this is the only
| disadvantage in enabling double precision support ...)

No, I don't know anything about this.  The hack I was referring
to has to do with the way that C unions are used to convert double
precision floats into pairs of ints (and back again).

All the best,
Mark