Evolution of Programming Languages

advertisement
1.01 – Evolution of Programming Languages
I.
II.
Categories of Programming Languages
A. Low Level
1. Characteristics
a) Almost no abstraction from the hardware
b) Code is written to specific hardware
c) Code will only operate on the hardware for which it was written
2. Examples
a) Machine Code (1st Generation)
i. Understood directly by CPU
ii. Takes specialized knowledge to program
iii. Uses hexadecimal numbering system
b) Assembly Language
i. One level of abstraction from machine code
ii. MASM is an assembly language
B. High Level
1. Characteristics
a) Strong abstraction from the hardware
b) Program can be written to run on many types of computers that run the same operating
system
2. Examples
a) Visual Basic 2010
i. BASIC (1964) was adapted by Microsoft for the purpose of writing Windows and Web
applications
ii. VB was released in 1991
iii. VB 2010 is the 9th version
iv. Object-oriented programming language (OOP)
b) Visual C#
i. Created by Microsoft (2001)
ii. Intended to be a simple, modern, general-purpose object-oriented programming language.
iii. Current version is C# 4.0
iv. Language most closely related to CLI (Common Language Infrastructure)—backbone of the
.Net framework
c) Other high level languages are C++, F#, Java, and many more
History of Programming Languages
A. First Computer Program
1. Written by Ada Lovelace
2. Written in 1842-43
B. Modern Computer Programming Languages
1. 1940s—Plankalkül
a) Written by Konrad Zuse
b) Not implemented until 1998
2. 1950s and 1960s
a) FORTRAN (Formula Translation)
i. 1955
ii. John Backus and others
b) COBOL (Common Business-Oriented Language)
i. 1959
ii. Grace Hopper and others
iii. Many of today’s financial computer programs are written in COBOL
c) RPG (Report Program Generator)
i. 1950
ii. IBM
d) BASIC (Beginners’ All-purpose Symbolic Instruction Code)
i. 1964
ii. Was widely taught in secondary schools
3. Late 1960s and 1970s
a) B
i. 1969
ii. Forerunner to C
b) Pascal
i. 1970
ii. Java borrows from Pascal
c) C
i. 1972
ii. C++, Java, C# and others are based on C
d) ML
i. 1973
ii. F# is based on ML
iii. C++ borrows from ML
III.
e) SQL
i. 1978
ii. Used for databases (Oracle, SAS)
4. The Internet Age—1990s
a) Python—1991
b) Java—1995
c) Javascript—1995 (not related to Java)
d) PHP—1995
e) Delphi—1995 (Object Pascal)
Evolution of Computer Programming Languages
A. Modern languages have more abstraction
1. Java program can run on a Windows system on any computer as long as a Java compiler is
installed
2. Early programs were hardware-specific
B. Modern languages have moved to Object Oriented Programming (OOP)
1. Use objects—data structures consisting of data fields and methods to design applications and
computer programs
2. Early programming languages did NOT use OOP
Download