Programming Languages

History of Fortran

Development of Fortran

•     in early computers, programs written using machine instructions encoded in bits

•     simple tasks required many instructions

•     programmer needed to know instruction code and other internal details

•     frequent errors which were difficult to correct

•     difficult to understand programs

•     program for a machine unusable on another

Development of Fortran

•     need was felt to simplify programming

•     concentrate on the method for solving a problem rather than internal details

•     make programs more readable and usable on more than one machine

•     develop a language for describing a program

•     develop a translator for converting a program in this language to the machine form

Development of Fortran

•     Fortran was the first such language ( 1954)

•     name derived from Mathematical Formula translation system

•     meant mainly for numerical computation

•     machine instructions replaced by statements

•     syntax of statements precisely defined

•     each statement can be translated into a sequence of machine instructions

Development of Fortran

•     memory addresses replaced by variable names in statements

•     translators did the job of assigning addresses to variables

•     translators were themselves programs and were called compilers

•     compilers were dependent on the machine but Fortran itself was machine independent

•     many Fortran compilers were developed (60s)

Fortran Versions

•     early Fortran allowed very simple statements

•     meant only for numerical computation

•     compiler developers added more powerful statements

•     resulted in many versions of Fortran

•     need for standardization

•     first Fortran standard called Fortran 66

•     specified allowed statements precisely

Fortran 77

•     early Fortran proved very successful

•     many complex programs developed which were widely used

•     led to development of other programming languages with other types of statements

•     need was felt for adding more features to Fortran to simplify programming further

•     Fortran standard was revised and a new standard called Fortran 77 developed

Fortran 90

•     Fortran 77 was enormously successful

•     used for more than a decade for scientific  and engineering applications

•     many powerful Fortran codes were developed

•     computer science grew as a discipline

•     the power of the computer for non-numerical applications became apparent

•     languages such as C, Pascal were developed to exploit this power

Fortran 90

•     Fortran did not have some of the features supported by these new languages

•     Fortran 77 proved inadequate for the non-numerical applications that grew very fast

•     again, a need was felt for adding some of the new features to Fortran

•     took almost a decade for the new Fortran standard, Fortran 90

•     Fortran 90 is as powerful as C, Pascal

Why Fortran?

•     oldest programming language

–   led to development of other languages

–   contains all basic programming concepts

•     widely used for more than 40 years

–   many well tested programs are available

–   Fortran compilers are amongst the best

–   machine code generated is optimized

–   common errors are easily detected

Why Fortran?

•     many built-in features for numerical computation

•     Fortran 90 includes all the desirable features of newer languages like C and  Pascal and other modern languages

•     simplicity

–   Fortran 90 syntax is easy to read

–   easy to identify programming errors

Disadvantages of Fortran

•     old language

–   many of earlier features of Fortran have proved harmful in hindsight

–   retained to ensure that old programs continue to work on new machines

–   should not be used in new programs

•     not suitable for “low level programming”  like writing an OS

•     does not support new programming styles

Summary

•     Fortran is the oldest programming language

•     developed to make programs easier to write, readable and portable

•     Fortran hides internal machine details from programmer

•     compilers translate a Fortran program into the form required by the machine

•     many versions of Fortran

•     Fortran 90 includes all desirable features