The issue is what you give up. Yes the FORTRAN compiler/runtime is fast but concurrent primitives weren't added until FORTRAN03, and recursion wasn't fully supported until FORTRAN90 [1]. It hides almost all the implementation details from the programmer.
Fortran is a really good language for number crunching. Academics who don't know how to code can build very fast number crunching tools without really any CS or hardware knowledge. This the target use case and target audience.
If you want to do low level system things with it, it'll be painful.
[1] Some fortran70 compilers had limited support for recursion it wasn't added to the official language standard until 20 years later tho.
This is the feature, not a bug. The purpose of fortran and why it is a fast efficient tool for scientists to write software is is exactly that it hides implementation details and is a bad systems language.
It allows you to define the important math parts of your program and hides the implementation part exactly so the compiler has a lot more power to optimize.
Fortran is a really good language for number crunching. Academics who don't know how to code can build very fast number crunching tools without really any CS or hardware knowledge. This the target use case and target audience.
If you want to do low level system things with it, it'll be painful.
[1] Some fortran70 compilers had limited support for recursion it wasn't added to the official language standard until 20 years later tho.