Modern FORTRAN Explained: Incorporating FORTRAN 2023 - Michael Metcalf