Skip to content

scivision/fortran2018-examples

Repository files navigation

Fortran 2018 Examples

cmake oneapi-linux fpm

Standalone examples of Fortran 2018 and 2023 standard features. Popular, free-to-use Fortran compilers (GCC, Intel oneAPI, NVIDIA, Cray, IBM OpenXL, AOCC, Flang) and paid compilers such as NAG support all or many Fortran 2008 and 2018 standards.

Some standard Fortran features are so distinctive that we've put examples in separate repos:

The examples are built with CMake:

cmake --workflow --preset default

or to do each step manually:

cmake -B build
cmake --build build
ctest --test-dir build -V

Programs

The standalone examples are organized under test/ directory, including:

  • array: Array math in modern CMake and Fortran
  • Git traceability
  • namelist: Fortran 90 / 2003 Namelist parsing -- native text config files for Fortran
  • io: modern Fortran File I/O including resolving absolute path
  • real: Numerous examples dealing with practical features of real floating point numbers, including sentinel NaN and polymorphism.
  • character: String handling is easy and performant in modern Fortran.
  • standard: advanced features that can be done with Fortran standard coding
  • submodule: Fortran 2008 and CMake ≥ 3.12 enable even better large program architecture with submodule
  • system: system (hardware) functionality accessible via Fortran

Companion libraries and examples

Resources

Fortran standards

Books

Compiler User Guides

Surveys