logfloat-0.12.1: Log-domain floating point numbers

Portabilityportable (with CPP)



Hugs (September 2006) has buggy definitions for isNaN and isInfinite on Float and Double. If this module is run through CPP with the macro __HUGS__ set to a value no larger than 200609, then correct definitions are used. Otherwise the Prelude definitions are used (which should be correct for other compilers). For example, run Hugs with

hugs -F'cpp -P -D__HUGS__=200609' Hugs/RealFloat.hs

N.B. The corrected definitions have only been tested to work for Float and Double. These definitions should probably not be used for other RealFloat types.

This installation was compiled with the normal Prelude version. This should be correct.