[Info-vax] [OT] Current students apparently can't read Fortran code...

Dan Cross cross at spitfire.i.gajendra.net
Thu Apr 14 09:40:27 EDT 2022


In article <jbqhg3Fl8soU1 at mid.individual.net>,
Bill Gunshannon  <bill.gunshannon at gmail.com> wrote:
>On 4/13/22 19:51, Bob Gezelter wrote:
>> If the story is not total BS, particularly from MIT students, it is a source of despair.
>> 
>> Today, it is no problem to do a module by module rewrite of FORTRAN into C. Frankly, it has not been a serious difficulty since the time of
>the original VAX FORTRAN, nearly a half century ago.
>
>Or you run it thru F2C and save the time for other tasks.  The big
>question would be why would they be converting it to anything?
>There is nothing wrong with Fortran unless the task changed from
>engineering to accounts receivable.  And there are plenty of compilers
>still available,

Hazarding a guess after reading the original article, it seems
that they wanted to expand the model significantly to include
microclimates, _and_ they wanted to change it to show the
interaction between small-scale and large-scale models (the
existing code only supports large-scale models).  My suspicion
is that the original code, which is probably some blend of
FORTRAN IV and -66/-77 is probably noodle code written by
generations of scienists with little or no formal training in
software.  In other words, it's probably badly written and
badly maintained.

Expanding it in the way they wanted would probably amount to a
near-total rewrite anyway (imagine a plethora of seemingly
unrelated arrays all sized to some base assumptions they'd like
to change; the article mentioned something about smallest
geographic area supported by the current model and how they want
to expand that by a couple of orders or magnitude; not to
mention implementing the large/small scale stuff _de novo_).  At
that point, you have choices: 1) keep the ancient FORTRAN
dialect, 2) rewrite it in modern FORTRAN, or 3) pick another
language.

If you're basically gutting the thing anyway, why bother with
the archaic dialect?  Once you're making a choice between (2)
and (3), one is already choosing between a modern FORTRAN
dialect that's essentially another language anyway, and
something else.  That is, if converting to (say) FORTRAN 2018,
that's already sufficiently different that there's little
practical difference between (2) and (3).  And once that's
established, one can pick whatever one likes.

Put another way, I think it's less an issue that "students can't
understand FORTRAN" and more "the situation was such that we
didn't have to stick with an ancient dialect of FORTRAN, and oh,
by the way, now we don't need to teach kids FORTRAN IV anymore."

As an aside, it's kind of a shame that SISAL never took off.

	- Dan C.




More information about the Info-vax mailing list