comp.lang.ada
 help / color / mirror / Atom feed
From: Jeffrey Templon <templon@studbolt.physast.uga.edu>
Subject: Fortran vs C++ vs. etc (has little to do with realtime anymore)
Date: 1997/09/12
Date: 1997-09-12T00:00:00+00:00	[thread overview]
Message-ID: <m34t7q3bcc.fsf_-_@studbolt.physast.uga.edu> (raw)
In-Reply-To: 341644F2.763D@BZZvnet.ibm.com


"Igor Chudov @ home" <ichudov@algebra.com> writes:

> Brian Thomson <thomson@vnet.ibm.com> wrote:

> * a FORTRAN optimizer knows that A and B cannot be modified by the

 [ ... ]

> * In C++ there is no such guarantee (unless you supply one
> * outside the language via a #pragma), and it makes a noticeable
> * difference in these matrix algorithms that are a big part of
> * scientific programming.
> 
> Well, the programmer of a Matrix class has to know what he is doing.
> Making C++ code efficient may be harder than writing efficient fortran
> code, but it is not impossible.

This is a good point, but perhaps not in the way that Igor intended.
One of the main reasons I tend to push Fortran (or something similar,
like Ada or Python ... although maybe not everyone would see what
I mean by "similar" here ;-) is that with stuff like C++, you *do*
have to know what you are doing, or you will make a mess of it.
The fact remains (and will for some time) that many scientific programmers
are scientists FIRST and programmers SECOND.  Turning the average
physicist/programmer (at least in my field) loose with a C++ compiler
is like giving your car keys to your eight-year-old.  A few of
them would actually be able to drive, but most of them would cause
big damage trying.

So one of my reasons for Fortran still being around: you can write
a reasonable program which runs reasonably efficiently just by more
or less typing in an expression of a simple algorithm.  Fortran's "mental
model" of the computer is very simple.

						JAT





  parent reply	other threads:[~1997-09-12  0:00 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <199709070005.TAA23336@manifold.algebra.com>
     [not found] ` <5utbth$rdi@snews2.zippo.com>
     [not found]   ` <34131554.73F2310E@roda.roc.servtech.com>
1997-09-09  0:00     ` Java vs. Eiffel vs. C++ in realtime applications James Yang
1997-09-11  0:00       ` Robert Dewar
1997-09-11  0:00         ` Ralph Paul
     [not found]     ` <34157696.16620299@nntp.interaccess.com>
     [not found]       ` <JTV2J.97Sep9170655@cobra.cs.virginia.edu>
     [not found]         ` <3415CE44.3BD531@calfp.co.uk>
     [not found]           ` <341644F2.763D@BZZvnet.ibm.com>
1997-09-11  0:00             ` Mike Rubenstein
1997-09-11  0:00               ` Volker Hetzer
1997-09-11  0:00                 ` Mike Rubenstein
1997-09-11  0:00               ` Fergus Henderson
1997-09-12  0:00             ` Jeffrey Templon [this message]
1997-09-13  0:00               ` Fortran vs C++ vs. etc (has little to do with realtime anymore) Joseph M. O'Leary
1997-09-16  0:00                 ` James F Cornwall
1997-09-12  0:00             ` Java vs. Eiffel vs. C++ in realtime applications Pavel
     [not found]             ` <199709110220.VAA24841@manifold.algebra.com>
1997-09-11  0:00               ` Mike Rubenstein
1997-09-12  0:00               ` Valentin Bonnard
1997-09-12  0:00             ` Joachim Durchholz
1997-09-12  0:00             ` Paul Johnson
1997-09-13  0:00 Fortran vs C++ vs. etc (has little to do with realtime anymore) Dr. Krishnan Chittur
1997-09-15  0:00 ` Area Industrial y Electromec�nica
1997-09-16  0:00 ` Rick Hawkins
1997-09-18  0:00   ` Oleg Krivosheev
1997-09-19  0:00     ` Rick Hawkins
1997-09-23  0:00       ` Oleg Krivosheev
1997-09-23  0:00         ` Gary L. Scott
1997-09-24  0:00         ` Rick Hawkins
1997-09-24  0:00           ` Xingzeng Liu
1997-09-25  0:00         ` const
1997-09-25  0:00           ` Oleg Krivosheev
1997-09-16  0:00 ` Vanesch P.
1997-09-16  0:00   ` Jeffrey Templon
1997-09-16  0:00     ` Gary L. Scott
1997-09-17  0:00       ` Jenn-Ching Luo
1997-09-17  0:00         ` Gary L. Scott
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox