ambiguous ?

Henry Spencer henry at utzoo.uucp
Sat Oct 21 17:29:05 AEST 1989


In article <14102 at lanl.gov> jlg at lanl.gov (Jim Giles) writes:
>If it involves compromises of correctness, the language is not worth
>pursuing...

How can you possibly bear to use floating-point arithmetic, then?  No
floating-point representation on any actual machine correctly implements
the real numbers (despite misuse of the word "REAL" in Fortran).  Instead
they implement horribly messy approximations, placing great demands on
the programmer or numerical analyst to demonstrate that his results can
actually be trusted.  The reasoning required for this is orders of
magnitude more complex than anything needed to deal with C's compromises.
Most Fortran programmers, of course, either don't bother at all or use
what Ric Hehner has dubbed "engineering induction":  "if it works for
n = 1, 2, and 3, that's good enough for me".  This is a rather unfortunate
attitude, considering how increasingly dependent we are on correct results
from engineering software.

Avoiding this nasty compromise requires doing all math symbolically, using
complex and difficult exact representations, or at the very least using
a very carefully-designed interval-arithmetic package.  How one does any
of these things in Fortran is beyond me.  Jim, perhaps you could elaborate
on how you've solved this one?  (I assume you have, since you get so upset
about C's problems, which are trifling by comparison.)
-- 
A bit of tolerance is worth a  |     Henry Spencer at U of Toronto Zoology
megabyte of flaming.           | uunet!attcan!utzoo!henry henry at zoo.toronto.edu



More information about the Comp.lang.c mailing list