lecture on programming languages chapter#5. programming paradigms/models paradigm defines a model or...
TRANSCRIPT
![Page 1: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/1.jpg)
Lecture on Programming
LanguagesChapter#5
![Page 2: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/2.jpg)
Programming Paradigms/Models
Paradigm defines a model or way of programming
We will discuss the following three paradigms Imperative/Procedural Paradigm Declarative Paradigm Object Oriented Paradigm
![Page 3: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/3.jpg)
The evolution of programming paradigms
6-3
![Page 4: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/4.jpg)
The composition of a typical imperative program or program unit
6-4
![Page 5: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/5.jpg)
Procedural Units
Local versus Global Variables Formal versus Actual Parameters Passing parameters by value versus
reference Procedures versus Functions
6-5
![Page 6: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/6.jpg)
The flow of control involving a procedure
6-6
![Page 7: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/7.jpg)
Example of procedure written in C language
6-7
![Page 8: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/8.jpg)
Executing the procedure
Demo and passing
parameters by value
![Page 9: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/9.jpg)
Executing the
procedure Demo and passing
parameters by reference
![Page 10: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/10.jpg)
Object Oriented Paradigm
In this approach all real world things are considered as an object. Each object has a certain set of qualities/ attributes and each object can perform some job/method. Thus if I have an object CAR then Car has its color, engine#, make, model etc as attributes and its methods can be drive(), stop() etc
Examples include C++, Java etc
![Page 11: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/11.jpg)
Declarative Programming Approach
It emphasizes the question “What is the problem?” rather than “What algorithm is required for solving the problem?” Here a general problem solving approach is developed that can solve a number of problems. These languages are difficult to design and are special purpose by nature
PROLOG (Programming LOGic) is an example
![Page 12: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/12.jpg)
Figure 6.25 Resolving the statements (P OR Q), (R OR ¬Q), ¬R, and ¬P
6-12
![Page 13: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/13.jpg)
Declarative Programming
Resolution: Combining two or more statements to produce a new statement (that is a logical consequence of the originals). Example: (P OR Q) AND (R OR Q)
resolves to (P OR R) Resolvent: A new statement deduced by
resolution Clause form: A statement whose elementary
components are connected by the Boolean operation OR
Unification: Assigning a value to a variable so that two statements become “compatible.” 6-13
![Page 14: Lecture on Programming Languages Chapter#5. Programming Paradigms/Models Paradigm defines a model or way of programming Paradigm defines a model or way](https://reader036.vdocuments.net/reader036/viewer/2022062517/56649ee95503460f94bfb074/html5/thumbnails/14.jpg)
Prolog Fact: A Prolog statement establishing a
fact Consists of a single predicate Form: predicateName(arguments).
Example: parent(bill, mary). Rule: A Prolog statement establishing a
general rule Form: conclusion :- premise.
:- means “if” Example: wise(X) :- old(X). Example: faster(X,Z) :- faster(X,Y), faster(Y,Z).
6-14