Skip to content


Modern Fortran, especially Fortran 2008 and later, has undergone significant advancements, allowing it to offer several modern programming concepts typically seen in other contemporary languages. Here are some reasons to consider using modern Fortran:

  1. Improved Structure and Modularity: Modern Fortran supports the use of modules, submodules, and other techniques to create structured and modular code. This is a significant improvement over earlier versions of Fortran, which were mostly procedural. These features make it easier to organize, manage, and reuse code, leading to better software design.
  2. Abstract Derived Types and Object-Oriented Programming: Fortran 2003 introduced object-oriented programming (OOP) features, including type extension, polymorphism, dynamic type allocation, and procedure pointers. Fortran 2008 took it a step further with the addition of the ‘abstract’ keyword, allowing for the creation of abstract data types (ADTs). These advancements enable more efficient code organization and a higher level of abstraction, making the code easier to understand, maintain, and evolve.
  3. Interoperability with C: Fortran 2003 began to introduce interoperability with C, but Fortran 2008 extended this capability. This feature allows for communication between Fortran and C at a binary level, making it easier to integrate Fortran code into C environments and vice versa. This can help extend the capabilities of your Fortran programs by incorporating existing C libraries or using C for system-level programming.
  4. Improved Array Operations: Modern Fortran has enhanced support for array programming. It allows for whole array operations and intrinsic functions that make scientific computing tasks easier and more efficient.