History of Programming Paradigms
Programming languages can be classified according to generation as well as type. Programming Paradigms simply means programming methods. there are five generations of languages which are first, second, third, fourth and fifth, and there are four types of types which are Object Oriented (OO) , Procedural, Declaritive and Functional.
First Generation Languages
1) First Generation (In the beginning)
2) Written in Binary or Hex
3) No translation needed
4) Very fast when executed
examples include Binary or Hex.
Second Generation Languages
1) Low Level Languages
2) Uses Mnemonics
3) Translation needed
Third Generation Languages
1) High Level Languages
2) Keywords close to Eglish
3) Compile and Interpret
4) Integrated Development Environment (IDE)
such examples include;
BASIC/PASCAL for teaching
COBOL for data processing
FORTRAN for scientists
Fourth Generation Languages
1) Limited Training needed
2) Report Program Generator
3) CASE Tools
4) Automatically produce work
Fifth Generation Languages
1) Stores facts and rules
3) Inference engine
Examples include PROLOG
expert systems are considered a Fifth Generation language
- you tell the computer what it must do
- programmers writes using the three basic building blocks; sequence, selection, and interation
- heavy use of procedures and functions
- hard to find bugs if there are problems with variables in functions/procedures.
- you tell the computer facts and the relationships between those facts
- then you query those facts with goals and the computer will produce a result by relating to the facts.
Object-Orientated (OO) Languages
- Objects are defined
- objects is a real world thing
- before the programmer writes the program ,they ask;
- what objects exist in the problem area?
- what events can happen to those objects?
- what should happen ,the methods, when a particular event occurs?
- geared towards science and enginering applications.
- Invloves breaking maths problem to the smallest possible units and then writing a set of functions for those units.
- each function then receives parameters from outside the function , manipulates the parameters mathematically and then outputs parameters to other functions.