The document discusses the history and evolution of programming languages from the 1940s to present. It notes that early languages provided little abstraction from computer hardware, but that over time languages increasingly abstracted complexity and improved developer productivity. The document outlines the development of assembly languages, third generation languages like FORTRAN, and more modern paradigms like object-oriented programming. It also discusses influential ideas like structured programming and the "GOTO controversy" that aimed to improve programming practices.
4. Ada Lovelace mathematician in mid-1800’s.
Languages provided no abstraction from the computer
hardware.
1940’s - general-purpose computers
Machine Language
First Generation
Assembly Language
Second Generation
5. Ancestors of Today’s Languages.
Abstracted away the underlying complexities of
hardware environment.
1950’s - Fortran, COBOL
Third Generation Languages
6. 1960’s – 1970’s
Increase the level of Abstraction
Make programs easier to develop and maintain.
Language Enhancements
Programming Paradigms
The GOTO Controversy.
Paradigms>>>>
GOTO >>>>
9. Formula Translation (FORTRAN) in 1954 led to...
Over 2000 languages.
How many languages in use today?
Difficult to say
Legacy Software(using outdated languages) is
everywhere.
Why can’t we just use one language?
10. Everyone knows it in one form or another.
Loops & Conditions.
Design Patterns.
APIs
How many of your friends know something called Rule
Engine?
11. Can get real Complex.
Tower of Babel.
The End
12. It is just a small piece of software in the big picture.
MAYBE (fuzzy logic)
An = 4an-1-3 (recursive rules)
No Standards
New Learning.
Difficult to Test.
14. Considered Harmful
Led to the concept of Structured Programing
Idea: Code is clearer if we restrict to a few control
structures.
Loops have single entry, single exit
<<<<<<Back
15. Procedural programing Logic Programing
Program can be broken into Based on use of declarative
procedures (or subroutines or statements in the language of
functions) mathematical logic.
Examples: Examples:Prolog
Fortran, Algol, Cobol, C, Pas
cal
Object-oriented programing
Program is seen as a group of
cooperating objects
Ideas:
encapsulation, inheritance
Examples:C++, C#, Java, Pyt
<<<<Back
hon