I mostly agree with @ilayn’s stance here. I’ll repost my reply from Slack:
Well, the end goal is to get rid of Fortran completely, so the only F90 code we’re considering (PRIMA) at the moment is okay because it replaced F77 code that’s a lot worse. I think we should avoid adding new F90 code at all unless there’s a super compelling reason, because it’s just going to have to be translated later on.
I think it is a valuable project goal. It’s not only about whether well-written modern Fortran is easier or harder to maintain for us than C/C++, but more about compiler toolchains. Fortran compilers are basically only mature on Linux/Unix, and a major time sink and tech debt hazard on Windows and macOS. We’ve had narrow escapes with Python 3.12 (xref the blog post from @h-vetinari that Lucas linked above), and also with the introduction of Apple’s M1 processor (updating gfortran
for that took a while and was the work of 1-2 dedicated experts, we couldn’t have done that ourselves). Now this situation may improve or it may get worse, it’s hard to know. LFortran development has slowed down a lot; Flang currently looks promising with the upcoming 19.0 being able to build SciPy - but I’m very aware that Flang has been in “promising” status for many years, so I wouldn’t yet could on it being a silver bullet in the long term.