Appendix J: A Fortran Timeline and Resource Guide

A compact history of the language and a curated list of where to go next. Sources follow the book's citation-honesty policy: Tier 1 are works and sites we are confident exist and recommend; Tier 2 are real but should be confirmed for current edition/URL.

A timeline of Fortran

Year Milestone Why it matters
1954–57 John Backus's team at IBM designs and ships FORTRAN I The first widely used high-level language; proved a compiler could rival hand-written assembly.
1958 FORTRAN II Independent subroutines and functions — separate compilation.
1962 FORTRAN IV Cleaner and more machine-independent; hugely influential.
1966 FORTRAN 66 The first standardized programming language (ANSI) — the reason old code still compiles.
1978 FORTRAN 77 Structured IF/THEN/ELSE, a real CHARACTER type; "the classic."
1991 Fortran 90 The great modernization: free-form source, array operations, modules, dynamic memory. Note the shift to lowercase "Fortran."
1997 Fortran 95 Refinements: FORALL, PURE, ELEMENTAL.
2004 Fortran 2003 Object orientation, procedure pointers, and standardized C interoperability.
2010 Fortran 2008 Coarrays (parallelism in the language), submodules, DO CONCURRENT.
2018 Fortran 2018 More parallel features and better C interop — this book's baseline.
2023 Fortran 2023 Conditional expressions, enumeration types, typeof/classof, trig in degrees.

The great divide of the book runs between FORTRAN 77 (fixed-form, implicit typing, COMMON, GOTO) and Fortran 90+ (free-form, arrays, modules, and, by 2008, native parallelism). See Chapter 1 for the story and Part IV for reading and modernizing the old form.

The essential books (Tier 1)

  • Stephen Chapman, Fortran for Scientists and Engineers (McGraw-Hill). The standard teaching text.
  • Metcalf, Reid & Cohen, Modern Fortran Explained (Oxford). The definitive language reference; later editions track Fortran 2018 and 2023.
  • Milan Curcic, Modern Fortran (Manning). Project-driven, modern, strong on parallelism.
  • Golub & Van Loan, Matrix Computations (Johns Hopkins). The reference behind the linear-algebra chapter and LAPACK's design.
  • Press et al., Numerical Recipes. A broad numerical-methods companion (use its algorithms as guidance; its older Fortran editions predate modern style).

The living ecosystem (Tier 1)

  • fortran-lang.org — the community hub: learning resources, the package manager fpm, the standard library (stdlib), an in-browser playground, and news. Start here.
  • fortran-lang.discourse.group — the friendly, active community forum.
  • GCC / gfortran documentation — the manual for the free compiler used throughout this book.
  • The OpenMP and MPI specifications (openmp.org, mpi-forum.org) — the authoritative references for Chapters 33 and 34.
  • Compiler Explorer (godbolt.org) — select gfortran and watch the assembly your code compiles to; invaluable from Chapter 27 on.
  • LFortran (lfortran.org) — a modern, interactive Fortran compiler; try Fortran in a notebook.

Standards, tools, and libraries (Tier 1 unless noted)

  • The Fortran standard — ISO/IEC 1539-1 (the 2018 and 2023 editions). The committees are J3 (US) and WG5 (international). Tier 2 for exact document numbers — confirm the current edition.
  • fpm (Fortran Package Manager), FORD (documentation), pFUnit and test-drive (unit testing), fortls (language server for editors). See Chapter 16.
  • LAPACK / BLAS (netlib.org/lapack), OpenBLAS, FFTW (fftw.org), NetCDF (unidata.ucar.edu/software/netcdf), HDF5 (hdfgroup.org), PETSc, ScaLAPACK — the numerical and data libraries of computational science.

History and context (Tier 2)

  • John Backus, "The History of FORTRAN I, II, and III" — the creator's first-hand account (reprinted in history-of-computing collections; confirm the venue).
  • The TOP500 project (top500.org) — the ranking of the world's fastest supercomputers, with honest statistics on what runs there.
  • FortranCon and national-laboratory HPC talks — video archives; good for hearing working scientists explain their language choices.

Where to go after this book

  1. Contribute to an open-source scientific code in your field — reading and improving real Fortran is the fastest way to deepen your skill (and see Chapter 36).
  2. Read Metcalf/Reid/Cohen cover to cover once you are fluent, to pin down the corners of the standard.
  3. Follow the standard's evolution on the fortran-lang Discourse; try new features in LFortran.
  4. Pair Fortran with Python in your daily work (Chapter 15): the combination is more than the sum.