Always false float comparisons
Ola Fosheim Grøstad via Digitalmars-d
digitalmars-d at puremagic.com
Mon May 16 00:22:29 PDT 2016
On Monday, 16 May 2016 at 06:34:04 UTC, Iain Buclaw wrote:
> This says more about promoting float operations to double than
> anything else, and has nothing to do with CTFE.
No, promoting to double is ok. NOT coercing the value to 32 bits
representation when it is requested is what is FUBAR and that is
the same issue as CTFE. But worse.
This alone is a good reason to avoid D in production. Debugging
signal processing/3D code is hard enough as it is. Not having a
reliable way to cast to float32 representation is really really
really bad.
Random precision is not a good thing, in any way.
1. It does not improve accuracy in a predictable manner. If
anything it adds noise.
2. It makes harnessing library code by extensive testing near
impossible.
3. It makes debugging of complex system level floating point code
very hard.
This ought to be obvious.
More information about the Digitalmars-d
mailing list