On Saturday, 21 May 2016 at 17:58:49 UTC, Walter Bright wrote:
On 5/21/2016 2:26 AM, Tobias Müller wrote:
On Friday, 20 May 2016 at 22:22:57 UTC, Walter Bright wrote:
On 5/20/2016 5:36 AM, Tobias M wrote:
Still an authority, though.

If we're going to use the fallacy of appeal to authority, may I present Kahan
who concurrently designed the IEEE 754 spec and the x87.

Actually cited this *because* of you mentioning Kahan several times. And because you said "The people who design these things are not fools, and there are good
reasons for the way things are."

I meant two things by this:

1. Do the homework before disagreeing with someone who literally wrote the book and designed the hardware for it.

2. Complaining that the x87 is not IEEE compliant, when the guy that designed the x87 wrote the spec at the same time, suggests a misunderstanding the spec. I.e. again, gotta do the homework first.

Sorry but this is a misrepresentation. I never claimed that the x87 doesn't conform to the IEEE standard. That's completely missing the point. Again.

Dismissing several decades of FP designs, and every programming language, as being "obviously wrong" and "insane" is an extraordinary claim, and so requires extraordinary evidence.

After all, what would your first thought be when a sophomore physics student tells you that Feynman got it all wrong? It's good to revisit existing dogma now and then, and challenge the underlying assumptions of it, but again, you gotta understand the existing dogma all the way down first.

If you don't, you're very likely to miss something fundamental and produce a design that is less usable.

The point is, that is IS possible to provide fairly reasonable and consistent semantics within the existing standards (C, C++, IEEE, ...). They provide a certain degree of freedom to accomodate for different hardware, but this doesn't mean that software should use this freedom to do arbitrary things.

Regarding the decades of FP design, the initial edition of K&R C contained the following clause: "Notice that all floats in an expression are converted to double; all floating point arithmethic in C is done in double precision". That passus was removed quite quickly because users complained about it.

Reply via email to