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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,183ebe04e93f0506 X-Google-Attributes: gid103376,public X-Google-Thread: 101deb,704fdaec147f48c X-Google-Attributes: gid101deb,public From: dewar@merv.cs.nyu.edu (Robert Dewar) Subject: Re: fixed point vs floating point Date: 1997/12/03 Message-ID: #1/1 X-Deja-AN: 294874596 References: <6632qf$m40$1@goanna.cs.rmit.edu.au> X-Complaints-To: usenet@news.nyu.edu X-Trace: news.nyu.edu 881163223 31200 (None) 128.122.140.58 Organization: New York University Newsgroups: comp.lang.pl1,comp.lang.ada Date: 1997-12-03T00:00:00+00:00 List-Id: Robin says <> No that's quite wrong, the fixed point expressions y * (V1 / V3) and (y * V1) / V3 are quite different expressions (to substitute one for the other, for example in the computation of interest in a bond, would not only be an error, but might actually be a violation of the law, since the details of such calculations are often contained in the bond instruments and mandated). These two expressions give quite different values, it is wrong to say that one is right and one is wrong. Which one is right depends on the problem at hand, and the intermediate precision required in both cases must be carefully controlled. I can easily see how the fixed-point facilities in PL/1 would seduce PL/1 enthusiasts into such errors. It is one of the reasons that the fixed-point design in PL/1 is generally considered a failure. Please note I am talking a very specific language design point here. I quite realize that most language designers consider the whole of PL/1 a dismal failure, but I don't go that far, PL/1 is not nearly as bad as its reputation, but it did make a number of serious mistakes, and the fixed-point design was one of them.