From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: Bob Brown Newsgroups: comp.lang.ada Subject: Re: Everything You Know Is Wrong Date: Wed, 2 Mar 2016 16:52:32 +0000 (UTC) Organization: Aioe.org NNTP Server Message-ID: References: <87twkrpvcf.fsf@adaheads.sparre-andersen.dk> <9974be39-f94d-4293-819e-bd1c9a1ddd65@googlegroups.com> NNTP-Posting-Host: 9LfaCYgENb9zJtTE3S55MA.user.gioia.aioe.org X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 Xref: news.eternal-september.org comp.lang.ada:29651 Date: 2016-03-02T16:52:32+00:00 List-Id: On 2016-03-02, Bob Brown wrote: > On 2016-03-02, J-P. Rosen wrote: >> Le 02/03/2016 16:44, Bob Brown a ?crit : >>>> This was a deliberate decision, to make Ada compatible with various >>>> floating point models. Many (most? all?) number crunching machines do >>>> not have IEEE arithmetic, >>> >>> Really? Which one(s) are you talking about? I didn't even know there were >>> any number crunchers aside from the sad ones made from a kid's pool full >>> of Intel chips stuck together with tape and glue. All the real stuff like >>> CDC/Cray has been gone for ages. >> Well, true enough, I don't know for recent machines. Even Silicon >> Graphics has disappeared (not so long ago), and AFAIK, they were not IEEE. >> >>>> and there has been famous papers claiming that Java requiring IEEE >>>> arithmetic was a huge mistake. >>> >>> I would be interested in seeing the references if you have them at hand. >>> >> https://www.cs.berkeley.edu/~wkahan/JAVAhurt.pdf Ok, skimming this quickly it does not seem to me that the issue was Java requiring IEEE arithmetic. The issue was Java's implementation of IEEE arithmetic is seriously broken and error prone. They did not support the highest precision type even though it is in virtually all desktop hardware. And they didn't support the various signalling and trap mechanisms required (and provided by other languages) to protect against serious errors in computations. Furthermore, and this is well-known but only touched-on very briefly by Kahan, the lack of integer math support in Java (and other very popular scripting languages like Javascript) is a terribly wrong-headed notion that causes no end of problems when floating point is misapplied and integer math should have been used instead. What's really scary is reading claims by various knuckelheads claiming it's ok to do financial and accounting calculations with floating point... Bob