Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28454 Discussions

Correct way to reference the Fortran standard

avinashs
New Contributor I
438 Views

For many years, I used F90 as a generic term to distinguish any code written in modern Fortran as opposed to the older standards (F77, F66) when such a reference was required in a publication or presentation. However, with the advent of newer standards (2003,2008,2015,2018), is there another abbreviation that is now valid? For example, "The XYZ software was written entirely in F2018 and built with the Intel Visual Fortran compiler version 19.0.4.228 in Windows 10."

0 Kudos
5 Replies
IanH
Honored Contributor II
438 Views

The recent standards ddescribe their informal name in the introduction to the document (e.g. "Fortran 2018"). You could also reference the standard document itself (e.g. ISO/IEC 1539-1:2018), but the year of publication is not always the same as the year in the informal name.

0 Kudos
Steve_Lionel
Honored Contributor III
438 Views

The correct way is "Fortran". It really adds no useful information to try to match up to a particular revision, and it is almost certain that your program includes some usage that is non-standard. It is perfectly reasonable to state which compiler and version you used to build and test. My experience is that most programmers are mistaken in their belief of which standard revision they are coding against.

0 Kudos
avinashs
New Contributor I
438 Views

Thanks for the responses. My intention is to inform the audience that the object-oriented nature of the code supporting the modeling project is possible in Fortran. I still meet some people for whom Fortran = F77 while there are others who graduated to F90 but are not upto speed with the latest developments such as type-bound procedures and submodules. So stating the version indirectly tells the audience who wish to do something similar that they would be required to access some of the latest features. Also, not all features are implemented in gfortran, hence the necessity to state the Intel compiler and version.

0 Kudos
FortranFan
Honored Contributor II
438 Views

See papers such as these:

and you will find "modern Fortran" is generally an accepted phrase in scientific literature that the author(s) are allowed to qualify with their own description of the features employed in the code in question relative to an ISO IEC standard reference, say ISO/IEC 1539-1:2018.

I personally think "modern Fortran" is a better option than just "Fortran" in both informal as well formal publications since the latter retains, unfortunately, the connotations of legacy FORTRAN with ANSI 1978 (aka FORTRAN 77) and earlier flavors.

0 Kudos
Steve_Lionel
Honored Contributor III
438 Views

Please don't use "Fortran 90" when you mean something newer than FORTRAN 77, and especially don't use that when all you mean is free-form source. (Conversely, please don't say "FORTRAN 77" when you mean fixed-form source.)

I don't see the point in specifying the standard revision for this purpose. Just say Fortran - I would lean against saying "modern Fortran" but I don't have strong objections to that. 

0 Kudos
Reply