A lot of codebases in skuff like fluid mechanics, meterological models, quantum mechanics etc. are still in Fortran. Largely because there is very little to gain from rewriting the code base in some other language.
I would choose Fortran for a new project 0/10 times, but to be fair, it’s a completely viable language for developing complex and computationally intensive models, and it’s better to have the 1-2 new guys learn Fortran every year than to rewrite a 200k line code base in some other language that offers few or no real advantages outside of personal preference.
Could the advantage be not having to train a small number of folks on some system no one wants to use and has very little utility outside of a few small things?
I’m legitimately asking. I don’t code at all. So, for all I know the answer could be “no.”
That’s not a bad question! If it were the case that Fortran was a language that had very little utility outside of a few small things that no one wants to use, the cost of training people would eventually surpass the one-time cost of a rewrite.
As it stands however, Fortran is still a perfectly viable language if you know how to use it, and (one of) the de-facto standard in quite a few environments. So even if you re-wrote the code base, your new guys would still probably have to learn it in order to use some common libraries and tools.
Also, it’s hard to overestimate the complexity in this kind of re-write. We’re talking about a lot of code that is written for performance rather than readability, and where the documentation for the algorithms typically is “that article”.