A language standard specifies the form and establishes the interpretation of programs expressed in the language. Its primary purpose is to promote portability of programs across a variety of systems among vendors and users.
The vendor-user community has adopted a series of major Fortran language standards. The primary organizations that develop and publish the standards are the InterNational Committee for Information Technology Standards (INCITS) and International Standards Organization (ISO).
The major Fortran language standards are:
Fortran 2018
American National Standard Programming Language Fortran and International Standars Organization, ISO/IEC 1539-1:2018, Information technology – Programming languages – Fortran. This standard introduced enhancements to coarrays including teams, events, and collective and atomic subroutines, enhanced interoperability with C, and bindings to ISO/IEC/IEEE 60559:2011 (IEEE floating point arithmetic). For more information on supported Fortran 2018 features, see the Intel® Fortran Language Reference.
Fortran 2008
American National Standard Programming Language Fortran and International Standards Organization, ISO/IEC 1539-1:2010, Information technology -- Programming languages -- Fortran. This standard introduces support for submodules and coarrays, and includes various performance enhancements such as the DO CONCURRENT construct. For more information on supported Fortran 2008 language features, see the Intel® Fortran Language Reference.
Fortran 2003
American National Standard Programming Language Fortran and International Standards Organization, ISO/IEC 1539-1:2004, Information technology -- Programming languages -- Fortran. This standard introduces extended support for floating-point exception handling, object-oriented programming, and improved interoperability with the C language. For more information on supported Fortran 2003 features, see the Intel® Fortran Language Reference.
Fortran 95
American National Standard Programming Language Fortran and International Standards Organization, ISO/IEC 1539-1: 1997(E), Information technology -- Programming languages -- Fortran. This standard introduces certain language elements and corrections into Fortran 90. Fortran 95 includes Fortran 90 and most features of FORTRAN 77. For information about differences between Fortran 95 and Fortran 90, see the Intel® Fortran Language Reference.
Fortran 90
American National Standard Programming Language Fortran, ANSI X3.198-1992 and International Standards Organization, ISO/IEC 1539: 1991, Information technology -- Programming languages -- Fortran. This standard emphasizes modernization of the language by introducing new developments. For information about differences between Fortran 90 and FORTRAN 77, see the Intel® Fortran Language Reference.
FORTRAN 77
American National Standard Programming Language FORTRAN, ANSI X3.9-1978. This standard added new features based on vendor extensions to FORTRAN 66 and addressed problems associated with large-scale projects, such as improved control structures.
FORTRAN 66
American National Standard Programming Language FORTRAN, ANSI X3.9-1966. This was the first attempt to standardize the languages called FORTRAN by many vendors. The language was based heavily on IBM's FORTRAN IV language.
Although a language standard seeks to define the form and the interpretation uniquely, a standard may not cover all areas of interpretation. It may also include some ambiguities. You need to carefully craft your program in these cases to insure that you get the desired answers when producing a portable program.