The seven ages of Fortran

  • Michael Metcalf Manfred-von-Richthofenstrasse 15, 12101 Berlin, Germany
Keywords: Array processing, Data abstraction, Object-oriented programming, Optimization, History of computing

Abstract

When IBM's John Backus first developed the Fortran programming language, back in 1957, he certainly never dreamt that it would become a world-wide success and still be going strong many years later. Given the oft-repeated predictions of its imminent demise, starting around 1968, it is a surprise, even to some of its most devoted users, that this much-maligned language is not only still with us, but is being further developed for the demanding applications of the future. What has made this programming language succeed where most slip into oblivion? One reason is certainly that the language has been regularly standardized. In this paper we will trace the evolution of the language from its first version and though six cycles of formal revision, and speculate on how this might continue. Now, modern Fortran is a procedural, imperative, compiled language with a syntax well suited to a direct representation of mathematical formulas. Individual procedures may be compiled separately or grouped into modules, either way allowing the convenient construction of very large programs and procedure libraries. Procedures communicate via global data areas or by argument association. The language now contains features for array processing, abstract data types, dynamic data structures, objectoriented programming and parallel processing.

Downloads

Download data is not yet available.

References

[1] Annals of the History of Computing. Vol. 6, No. 1 (1984).
[2] Computer Standards & Interfaces, Vol. 18 (1996).
[3] ISO/IEC 1539-1 : 2010. ISO, Geneva, Switzerland.
[4] Metcalf, M., Reid. J. and Cohen, M. (2011). Modern Fortran Explained. Oxford University Press, Oxford and New York.
Published
2011-04-01
How to Cite
MetcalfM. (2011). The seven ages of Fortran. Journal of Computer Science and Technology, 11(01), p. 1-8. Retrieved from https://journal.info.unlp.edu.ar/JCST/article/view/681
Section
Invited Articles