From: Martin Bonner (martin.bonner_at_[hidden])
Date: 2006-05-15 15:47:17
Robert Ramey wrote:
> Peter Dimov wrote:
>> It depends. Where do you draw the line? Is inf a number? Is -0.0 a
>> number? You have to have NaN if you want to be able to represent x/y
>> as a float.
> That's the problem. x/y is not a valid operation if y is equal to 0. So
> it can't be represented as a number.
> The fact that C++ permits such an operation makes C++ different
> than arithmetic.
"different than SOME arithmetics". The arithmentic C++ (well, actually IEEE) defines is a perfectly sensible arithmetic.
> The fact that C++ uses operators like "/" and defines them
> similar to - but not identical to - the way they are defined by
> standard arithmetic
Granted. It isn't the standard arithmetic.
> is the source of all these problems.
What problems? (Apart from the extra work involved for authors of libraries like serialization I mean!)
> I say that C++ should be changed to so that the floats and operators which
> apply to them should implement what people expect from arithmetic operators.
Yes, but realistically that is never going to happen.
Wouldn't it be better to support the use-cases that people have in real code?
-- Martin Bonner Pi Technology, Milton Hall, Ely Road, Milton, Cambridge, CB4 6WZ +44 1223 203894
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk