CS PROGRAMMING PARADIGMS Regulation Lecture Notes Anna University CS PROGRAMMING PARADIGMS Lecture notes PP Notes 5TH. CS PP Lecture – Ebook download as PDF File .pdf), Text File .txt) programming paradigms and develop skills in using these paradigms using. Anna University Fifth semester Third Year lecture Notes for Programming Paradigms CS PP free pdf! The Third Year,Fifth semester Anna.
|Genre:||Health and Food|
|Published (Last):||1 May 2009|
|PDF File Size:||11.91 Mb|
|ePub File Size:||17.17 Mb|
|Price:||Free* [*Free Regsitration Required]|
Abstract Next lecture Index References Contents. In this introductory part of the material we will introduce the concept of programming paradigms.
Lecture notes: Programming Paradigms
The word programming paradigm is used in several different, although related meanings in computer science. It is interesting and useful to investigate the meaning of the word ‘paradigm’.
Programming paradigm in this course A pattern that serves as a school of thoughts for programming of computers Programming technique Related to an algorithmic idea for solving a particular class of problems Examples: We identify four main programming paradigms and a number of minor programming paradigms. The concept Main paradigm: A main programming paradigm stems an idea within some basic discipline which is relevant for performing computations. Main programming paradigms The imperative paradigm The functional paradigm The logical paradigm The object-oriented paradigm Other possible programming paradigms The visual paradigm One of the parallel paradigms The constraint based paradigm.
Overview of the four main programming paradigms.
The word ‘imperative’ can be used both as an adjective and as a noun. As an adjective it means ‘expressing a command or plea’.
In other words, asking for something to be done. As a noun, an imperative is a command or an order.
Some programming languages, such as the object oriented language Beta, uses the word ‘imperative’ for commands in the language. First do this and next do that. Discipline and idea Digital hardware technology and the ideas of Von Neumann Incremental change of the program state as a function of time.
Execution of computational steps in an order governed by control structures We call the steps for commands Straightforward abstractions of the way a traditional Von Neumann computer works Similar to descriptions of everyday routines, such as food recipes and car repair Typical commands offered by imperative languages Assignment, IO, procedure calls Language representatives Fortran, Algol, Pascal, Basic, C The natural abstraction is the procedure Abstracts one or more actions to a procedure, which can be called as a single command.
Evaluate an expression and use the resulting value for something. Discipline and idea Mathematics and the theory of functions The values produced are non-mutable Impossible to change any constituent of a composite value As a remedy, it is possible to make a revised copy of composite value Atemporal Time only plays a minor role compared to the imperative paradigm Applicative All computations are done by applying calling functions The natural abstraction is the function Abstracts a single expression to a function which can be evaluated as an expression Functions are first class values Functions are full-fledged data just like numbers, lists, Fits well with computations driven by needs Opens a new world of possibilities.
Answer a question via search for a solution. Discipline and idea Automatic programmiing within artificial intelligence Based on axioms, inference rules, and queries. Program execution becomes a systematic search in a set of facts, making use of a set of inference rules.
Send messages between objects to simulate the temporal evolution of a set of real world phenomena. Discipline and idea The theory of concepts, and models of human interaction with real world phenomena Data as well as operations are encapsulated in objects Information hiding is used to protect internal properties of an object Objects interact by means of message passing A metaphor for applying an operation on an object In most object-oriented languages objects are grouped in classes Objects in classes are similar enough to allow programming of the classes, as opposed to programming of the individual objects Classes represent concepts whereas objects represent phenomena Classes are organized in inheritance hierarchies Provides for class extension or specialization.