Michael Hoffman wrote: > What's the best way to portably generate binary floating point infinity > and NaNs? I only know two solutions: > > 1. Using the fpconst module proposed in IEEE 754, which I believe shifts > bits around. > > 2. Using an extension module (for example, numarray.ieeespecial will do it). > > I thought of using float(Decimal("nan")), but apparently > Decimal.__float__(self) is float(str(self)), which isn't portable.
This is what numpy does (translated from the C): mul = 1e10 inf = mul tmp = 0.0 while True: inf *= mul if inf == tmp: break tmp = inf nan = inf / inf -- Robert Kern "I have come to believe that the whole world is an enigma, a harmless enigma that is made terrible by our own mad attempt to interpret it as though it had an underlying truth." -- Umberto Eco -- http://mail.python.org/mailman/listinfo/python-list