0% found this document useful (0 votes)
7 views12 pages

Chapter 2tpl

The document outlines the evolution of major programming languages from 1956 to 2005, highlighting key languages such as FORTRAN, LISP, and ALGOL, along with their development environments and features. It categorizes languages into multi-purpose and special-purpose, detailing the characteristics and impacts of early languages like FORTRAN and LISP on programming methodologies. Additionally, it discusses the advancements in control structures, data types, and syntax that influenced later programming languages.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views12 pages

Chapter 2tpl

The document outlines the evolution of major programming languages from 1956 to 2005, highlighting key languages such as FORTRAN, LISP, and ALGOL, along with their development environments and features. It categorizes languages into multi-purpose and special-purpose, detailing the characteristics and impacts of early languages like FORTRAN and LISP on programming methodologies. Additionally, it discusses the advancements in control structures, data types, and syntax that influenced later programming languages.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

CHAPTER 2

EVOLUTION OF MAJOR PROGRAMMING


LANGUAGES :

MAJOR PROGRAMMING LANGUAGES:


1956 _ 1960 : FORTRAN , COBOL , LISP , ALGOL
1961 _ 1965 : APL notation , ALGOL 60
1966_ 1970: APL , SNOBOL 4 , FORTRAN 66 , ALGOL 68 , ALGOL W , BCPL
1971_1975: pascal , PL/1 , C
1976-1980 : SMALLTALK , ADA , FORTRAN 77
1981-1985 : SMALLTALK-80 , PROLOG , ADA 83
1986-1990 : C++ , SML , HASKELL
1991-1995 : ADA 95 , TCL , PERL
1996-2000 : JAVA
2000-2005 : C# , PYTHON, RUBY , SCALA

MULTI-PURPOSE LANGUAGES :
SCALA , C# , JAVA , C++ , C , Haskell, SML , SCHEME , LISP , PYTHON ,PERL , RUBY

SPECIAL PURPOSE LANGUAGES:


UNIX SHELL , SQL, LATEX

1. FORTRAN ( FORMULA TRANSLATOR)(1957):


 Developed by an IBM team led by JOHN BACKUS .
 The first high level programming language to become widely used
 Designed for the new IBM 704, which had index
registers and floating point hardware
- Environment of development:
1. Computers were small and unreliable
2. Applications were scientific
3. No programming methodology or tools
4. Machine efficiency was most important
5. remain main language for scientific computing
Impact of environment on design
1. No need for dynamic storage
2. Need good array handling and counting loops
3. No string handling, decimal arithmetic, or
powerful input/output (commercial stuff)
- First implemented version of FORTRAN
- Names could have up to six characters
- Posttest counting loop (DO)
- Formatted i/o
- User-defined subprograms
- Three-way selection statement (arithmetic IF)
- No data typing statements
- No separate compilation
- Compiler released in April 1957, after 18 worker/
years of effort
- Programs larger than 400 lines rarely compiled
correctly, mainly due to poor reliability of the 704
- Code was very fast
- Quickly became widely used
PATTERN :
Originally columns and lines were relevant and blanks and upper / lower case ignored except
strings.
Variables names are from 1 t 6 characters long , letters , digits and underscores only.
Variables need to be declared : implicit naming convention determines their type
Programmer – defined constants are called parameter
Arrays : subscript ranges can be declared as ( 1 : size)_
Static type checking is used in FORTRAN but checking is incomplete . constructs that could
not be statically checked were often left unchecked at run time
( fortran 90 produces module system which enables each program checking across separately )
Storage representation is sequential.
CONTROL STRUCTURES
FORTRAN II - 1958
- Independent compilation
- Fix the bugs
FORTRAN IV - 1960-62
- Explicit type declarations
- Logical selection statement
- Subprogram names could be parameters
- ANSI standard in 1966
FORTRAN 66
Relied heavily on statement labels and GOTO statements , also have DO ( for ) loops
. FORTRAN 77 - 1978
- Character string handling
- Logical loop control statement
- IF-THEN-ELSE statement
FORTRAN 90 - 1990
- Modules
- Dynamic arrays
- Pointers
- Recursion
- CASE statement
- Parameter type checking
-while loop
DATA TYPES :
Numeric data : integer , real , complex , double – precision real
Boolean data
Arrays
Character string
Files
Fortran 90 added derived data types like C structs

FORTRAN CODE EXAMPLE


LISP = LIST PROCESISING ( 1960)
LISt Processing language
(Designed at MIT by McCarthy)
He defined LISP as “ a scheme for a partial recursive functions of a certain class symbolic
expression”
LISP is expression based language . Conditional expressions that produce a value were new in
LISP. Its syntax is simple. To making parsing easy all operations are written in prefix form
( operator in front of all operands ) . LISP program compute with atoms and cells. Most
operations in LISP take list arguments and return list values
Example;
(cons ‘ ( a b c )’ (d e f) )
One feature that sets LISP apart from many other languages that it is possible for a program to
build a data structure that represents an expression and then evaluates the expression as if it were
written as a part of program . This is done with function eval.
- AI research needed a language that:
1. Process data in lists (rather than arrays)
2. Symbolic computation (rather than numeric)
- Only two data types: atoms and lists
- Syntax is based on lambda calculus
- No need for variables or assignment
- Control via recursion and conditional
expressions
- Still the dominant language for AI
- COMMON LISP and Scheme are contemporary dialects of LISP,
ALGOL : Had major effect on language design
MAIN CHARACTERSITICS :
Block structure
Functions and procedures
Static typing
The semicolon separate the statements
PASCAL:

PASCAL EXAMPLE PROGRAM:


PARAMETER PASSING ( ALGOL AND PASCAL)

You might also like