140 likes | 409 Views
FORTRAN. History. FORTRAN - Interesting Facts. FORTRAN is the oldest Language actively in use today. FORTRAN is still used for new software development in many scientific applications Many FORTRAN programs written 20-40 years ago are still in active use today!. FORTRAN - Early History.
E N D
FORTRAN History
FORTRAN - Interesting Facts • FORTRAN is the oldest Language actively in use today. • FORTRAN is still used for new software development in many scientific applications • Many FORTRAN programs written 20-40 years ago are still in active use today!
FORTRAN - Early History • Early 1950’s • Computers very slow • Small memories - 15k typical • Little or no operating system • Programming done in machine/assembly language • Idea of a high level translated language seemed impractical • code generated would be slower • code generated would be bigger
FORTRAN I • Developed in 1954-1957 • IBM team lead by John W. Backus • FORTRAN - FORmula TRANslator • Designed to ease coding of mathematical algorithms
FORTRAN I • Programmers skeptical at first • Then advantages seen: • Easier, faster to program • Programs are portable • Programs can be maintained • Program libraries build and shared • Adopted by the scientific and military communities
FORTRAN II • FORTRAN II (1958) was a significant improvement • added the capability for separate compilation of program modules • assembly language modules could also be 'linked loaded' with FORTRAN modules.
FORTRAN III • FORTRAN III (1958) never released to the public • it made it possible to use assembly language code right in the middle of FORTRAN code. • Such "inlined" assembly code can be more efficient, but the advantages of an HLL are lost (e.g. portability, ease of use).
FORTRAN IV • FORTRAN IV (1961) was a 'clean up' of FORTRAN II • improved the implementation of the COMMON and EQUIVALENCE statements • eliminated some machine-dependant language irregularities.
FORTRAN 66 • First HLL Standard • Card oriented (as were previous versions)
FORTRAN 77Standard • Added • DO loops with a decreasing control variable (index). • Block if statements IF ... THEN ... ELSE ... ENDIF (before F77 there were only IF GOTO). • Pretest of DO loops, before F77 DO loops were always executed at least once, so you had to add an IF GOTO before the loop.
FORTRAN 77 • Added • CHARACTER data type (before characters were always stored inside INTEGER variables). • Main program termination without a STOP statement
Fortran 90 standard • Added • Free format source code form (column independent) • Modern control structures (CASE & DO WHILE) • Records (structures) • Array notation (array sections, array operators, etc.) • Dynamic memory allocation
Fortran 90 standard • Added • Dynamic memory allocation • Derived types and operator overloading • Keyword argument passing, INTENT (in, out, inout) • Numeric precision and range control • Modules • Vector processing
FORTRAN 2000 Standard • Expected about 2002