Which five features should Fortran 202Y implement?

Really feel the need to disclaimer here that I’m speaking 100% on behalf of myself.

  • The first thing that immediately sprung to my mind was standardization of the module format across vendors, because this was a nightmare back when I was pretending to be DevOps for my projects. IMHO, we’ll never move away from MPI header includes as long as modules are incompatible across vendors, no matter how many passive-aggressive messages vendors send to customers about using them, as the average user can’t trust that the sysadmins know about Fortran. (I also don’t think this will happen, though.)
  • Agreed about generics, nothing to add that hasn’t been covered.
  • Agreed about namespaces, nothing to add that hasn’t been covered.
  • The question of error handling needs to be handled very carefully, just saying “better” here isn’t good enough. At one point, exceptions were considered to be “better” than simple return values.
  • I feel that “implicit save” and “implicit none” have been combined into one larger argument even though they’re quite different. My $0.02 is that removing “implicit save” would cause difficult-to-debug runtime errors whose resolution wouldn’t make the code that much cleaner, whereas enforcing “implicit none” by default for modern Fortran would lead to relatively easy-to-spot compiler-time errors whose resolution would make the code cleaner.
4 Likes