What lives here
Fifty short lessons, one unbroken chain: every page ends with a link to the next one, so you can read the course start to finish without ever wondering where to click. Each lesson teaches one idea with standard-conforming Fortran examples, from the first program to parallel coarrays:
- Start here: What is Fortran and where it runs — then follow the chain through lesson 50.
- Language core, lessons 2-20: install, first program, structure, types, kinds, operators, conditions, loops, arrays, sections, strings, IO, files, procedures, modules, USE, INTENT, OPTIONAL, interfaces.
- Design and parallelism, lessons 21-33: derived types, type-bound procedures, OOP, overloading, finalization, allocatables, pointers, DO CONCURRENT, coarrays, OpenMP, namelists, IEEE arithmetic, intrinsics.
- Practice and tooling, lessons 34-46: random numbers, strings, CLI args, environment, error stop, testing, builds, debugging, C interop, fixed-form migration, numeric models, performance, the modern Fortran tour.
- Finish, lessons 47-50: two capstones (stats tool and 1D heat equation), the style guide, and the hero roadmap with every lesson on one page.
How to use this course
Type every example, do not just read it. Compile each program with
gfortran -Wall -Wextra before moving on -
the course assumes your hands remember lesson 3 by the time lesson
16 arrives.
Two rules carry the whole course: implicit none
in every unit, and intent on every dummy
argument.