On Thursday, 2 January 2014 at 11:37:22 UTC, Lars T. Kyllingstad
wrote:
I don't think we should worry too much about standards
compliance. A library Complex type is quite different from a
hardware floating-point type.
Are you sure?
Sometimes you need to translate an algorithm, you don't
understand the inner workings of, from a codebase/cookbook. If
std.complex differs from the most used c++/fortran
implementations people will be confused, and you also end up
having (machine translated) algorithm libraries each supplying
their own complex type. Use 3 different libraries and you have to
deal with 3 different complex types.
Floating point is rather sensitive to reordering of instructions,
so I'd say you'll be better off mirroring one of the major
existing implementations, otherwise accumulated discrepancies
will be blamed on the language... A new tool that produce the
same results as the old proven dinosaur tool look trustworthy. It
makes you think that the conversion of your algorithms to the new
tool was a success.