The seven ages of Fortran
Keywords:Array processing, Data abstraction, Object-oriented programming, Optimization, History of computing
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.
 Computer Standards & Interfaces, Vol. 18 (1996).
 ISO/IEC 1539-1 : 2010. ISO, Geneva, Switzerland.
 Metcalf, M., Reid. J. and Cohen, M. (2011). Modern Fortran Explained. Oxford University Press, Oxford and New York.