KEMBAR78
Programming Paradigm & Languages | PPTX
Lecture 8
Programming Paradigm
& Languages
Lecturer: Sumaira Hussain
S.M.I UNiversity
Programming Languages
The process of telling the computer what to do
Also known as coding
Batch Programs
These are typically started from a shell (or automatically
via a scheduler) and tend to follow a pattern of:
–Initialize internal data
–Read input data
–Process that data
–Print or store results
Key feature: No user interaction with the computer
while the program is running
Examples?
PC are a printing request or an analysis of a Web site log.
Event-Driven Programs
Examples? GUIs, microwave, camera
The system sends events to the program and the
program responds to these as they arrive.
Event-Driven Programs
Events can include things a user does -like
clicking the mouse -or things that the system
itself does -like updating the clock.
These programs generally work as follows:
–Initialize the internal data
–Wait for events to arrive
–Identify an incoming event and react
accordingly
Programming Languages
• Machine Language Assembly Language (1956-63)
• LISP (1956)
• Fortran (1957)
• COBOL (1959)
• PL/1(1964)BASIC (1964)
• Pascal (1970)
• Smalltalk (1972)
• C (1972)
Programming Languages
• Ada(1983)
• C++ (1983-85)
• QBasic (1986)
• Perl (1987)
• VisualBasic (1991)
• PowerBuilderJava (1995)
• JavaScriptC# (2001)
Programming Language
A language used to write instructions for the
computer. That is the way of representation any
program in to that form which is understandable
by CPU.
Programming Language
Programs are written by using any language and
these languages set the procedures & rules to
write computer programs. Programmers have to
follow that rules which is set by programming
languages. Types of Languages
1)Low Level Language
2)High Level Language
LOW LEVEL LANGUAGE
Low level language is also called machine
language. That types of languages are close to
machine and easily understand by machine as, it
is majorly in binary form (0 & 1). low level
language types are
Machine language
Assembly language
HIGH LEVEL LANGUAGE
High level programming languages is languages
program than use languages or syntax which
closes to human languages so; it is easy to
understanding the languages. This type of
language is machine-independent, and uses
similar language as English, which is easily
understandable by human.
TYPES OF HIGH LEVEL LANGUGES
Types of high level languages are:
1) Procedural Languages
2) Functional & Non procedural Languages
3) Object Oriented Languages
Procedural programming languages
FORTRAN (FORmula TRANslation)
BASIC (Beginners All Purpose Symbolic
Instruction Code)
COBOL (Common Business Oriented Language)
These types of languages are “Third-
Generation Language”.
NON PROCEDURAL LANGUGES
In non-procedural languages the computer is
not limited to a set of precise instructions.
Instead, the programmer defines only the
problem—not the instructions--to solve the
problem. Non Procedural Programming
Languages are
SQL (Structured Query Language)
LISP (List Processing)
PROLOG (PROgramming with LOGic)
Object-Oriented Languages
Programming languages specifically designed to
make it easy to implement object-oriented designs
In object-oriented languages, the code used to
write the program and the data processed by the
program are grouped together into units called
objects. Objects are further grouped into classes,
which define the attributes objects must have.
Examples: Smalltalk, C++, Java
Language Translator
A translator is a computer program that
translates a program written in a
given programming language into a functionally
equivalent program in a different computer
language, without losing the functional or
logical structure of the original code
Types of Language Translator
• Compiler
• Interpreter
• Assembler
COMPILER
A compiler is a computer program that
transforms human readable complete code of
another computer program into the machine
readable code that a CPU can execute.
INTERPRETER
An interpreter is a computer program that reads
the source code of another computer program
and executes that program. Because it is
interpreted line by line, it is a much slower way
of running a program than one that has been
compiled but is easier for learners because the
program can be stopped, modified and rerun
without time-consuming compiles.
ASSEMBLER
Assembler converts code written in assembly
language into machine language. It works same
like interpreter and compiler. The assembler
program takes each program statement in the
code and generates a corresponding bit stream
or pattern (a series of 0's and 1's of a given
length).
• Both interpreters and compilers are available
for most high-level languages. However, BASIC
and LISP were especially designed to be
executed by an interpreter
FORTRAN
Fortran is a particularly good language for
processing numerical data, but it does not lend
itself very well to large business programs
Pascal
Pascal is very good for writing well-structured and
readable programs, but it is not as flexible as the C
programming language
C++
C++ embodies powerful object-oriented features,
but it is complex and difficult to learn
Testing & Debugging
•Testing:
The tasks performed to determine the existence of
defects
•Debugging:
The tasks performed to detect the exact location of
defects
•Defects are also called bugs or errors
•Let us now look at one of their classifications
Types of Errors
•Syntax errors
•Semantic errors
•Run-time errors
Syntax Errors
•They are caused by the code that somehow
violates the rules of the language
•Easy to detect and fix errors
•The browser stops code interpretation on
detecting one of these
•Examples:
a = b + * c ;
receiver = receiver + 2
Syntax error?
Semantic Errors
•Occur when a statement executes and has an
effect not intended by the programmer
•Hard to detect during normal testing
•Often times occur only in unusual & infrequent
circumstances
•The „+‟ operator often results in unintended
consequences. Remedy: Convert, before use
Run-Time Errors
•Occur when the program is running and tries to
do something that is against the rules
•Example: Accessing a non-existent variable,
property, method, object, etc (e.g. a method
name is misspelled)
•Sources of these can be determined by a
careful reading of the code, but unfortunately,
not always!

Programming Paradigm & Languages

  • 1.
    Lecture 8 Programming Paradigm &Languages Lecturer: Sumaira Hussain S.M.I UNiversity
  • 2.
    Programming Languages The processof telling the computer what to do Also known as coding
  • 3.
    Batch Programs These aretypically started from a shell (or automatically via a scheduler) and tend to follow a pattern of: –Initialize internal data –Read input data –Process that data –Print or store results Key feature: No user interaction with the computer while the program is running Examples? PC are a printing request or an analysis of a Web site log.
  • 4.
    Event-Driven Programs Examples? GUIs,microwave, camera The system sends events to the program and the program responds to these as they arrive.
  • 5.
    Event-Driven Programs Events caninclude things a user does -like clicking the mouse -or things that the system itself does -like updating the clock. These programs generally work as follows: –Initialize the internal data –Wait for events to arrive –Identify an incoming event and react accordingly
  • 6.
    Programming Languages • MachineLanguage Assembly Language (1956-63) • LISP (1956) • Fortran (1957) • COBOL (1959) • PL/1(1964)BASIC (1964) • Pascal (1970) • Smalltalk (1972) • C (1972)
  • 7.
    Programming Languages • Ada(1983) •C++ (1983-85) • QBasic (1986) • Perl (1987) • VisualBasic (1991) • PowerBuilderJava (1995) • JavaScriptC# (2001)
  • 8.
    Programming Language A languageused to write instructions for the computer. That is the way of representation any program in to that form which is understandable by CPU.
  • 9.
    Programming Language Programs arewritten by using any language and these languages set the procedures & rules to write computer programs. Programmers have to follow that rules which is set by programming languages. Types of Languages 1)Low Level Language 2)High Level Language
  • 10.
    LOW LEVEL LANGUAGE Lowlevel language is also called machine language. That types of languages are close to machine and easily understand by machine as, it is majorly in binary form (0 & 1). low level language types are Machine language Assembly language
  • 11.
    HIGH LEVEL LANGUAGE Highlevel programming languages is languages program than use languages or syntax which closes to human languages so; it is easy to understanding the languages. This type of language is machine-independent, and uses similar language as English, which is easily understandable by human.
  • 12.
    TYPES OF HIGHLEVEL LANGUGES Types of high level languages are: 1) Procedural Languages 2) Functional & Non procedural Languages 3) Object Oriented Languages
  • 13.
    Procedural programming languages FORTRAN(FORmula TRANslation) BASIC (Beginners All Purpose Symbolic Instruction Code) COBOL (Common Business Oriented Language) These types of languages are “Third- Generation Language”.
  • 14.
    NON PROCEDURAL LANGUGES Innon-procedural languages the computer is not limited to a set of precise instructions. Instead, the programmer defines only the problem—not the instructions--to solve the problem. Non Procedural Programming Languages are SQL (Structured Query Language) LISP (List Processing) PROLOG (PROgramming with LOGic)
  • 15.
    Object-Oriented Languages Programming languagesspecifically designed to make it easy to implement object-oriented designs In object-oriented languages, the code used to write the program and the data processed by the program are grouped together into units called objects. Objects are further grouped into classes, which define the attributes objects must have. Examples: Smalltalk, C++, Java
  • 16.
    Language Translator A translatoris a computer program that translates a program written in a given programming language into a functionally equivalent program in a different computer language, without losing the functional or logical structure of the original code
  • 17.
    Types of LanguageTranslator • Compiler • Interpreter • Assembler
  • 18.
    COMPILER A compiler isa computer program that transforms human readable complete code of another computer program into the machine readable code that a CPU can execute.
  • 19.
    INTERPRETER An interpreter isa computer program that reads the source code of another computer program and executes that program. Because it is interpreted line by line, it is a much slower way of running a program than one that has been compiled but is easier for learners because the program can be stopped, modified and rerun without time-consuming compiles.
  • 20.
    ASSEMBLER Assembler converts codewritten in assembly language into machine language. It works same like interpreter and compiler. The assembler program takes each program statement in the code and generates a corresponding bit stream or pattern (a series of 0's and 1's of a given length).
  • 21.
    • Both interpretersand compilers are available for most high-level languages. However, BASIC and LISP were especially designed to be executed by an interpreter
  • 22.
    FORTRAN Fortran is aparticularly good language for processing numerical data, but it does not lend itself very well to large business programs Pascal Pascal is very good for writing well-structured and readable programs, but it is not as flexible as the C programming language C++ C++ embodies powerful object-oriented features, but it is complex and difficult to learn
  • 23.
    Testing & Debugging •Testing: Thetasks performed to determine the existence of defects •Debugging: The tasks performed to detect the exact location of defects •Defects are also called bugs or errors •Let us now look at one of their classifications
  • 24.
    Types of Errors •Syntaxerrors •Semantic errors •Run-time errors
  • 25.
    Syntax Errors •They arecaused by the code that somehow violates the rules of the language •Easy to detect and fix errors •The browser stops code interpretation on detecting one of these •Examples: a = b + * c ; receiver = receiver + 2 Syntax error?
  • 26.
    Semantic Errors •Occur whena statement executes and has an effect not intended by the programmer •Hard to detect during normal testing •Often times occur only in unusual & infrequent circumstances •The „+‟ operator often results in unintended consequences. Remedy: Convert, before use
  • 27.
    Run-Time Errors •Occur whenthe program is running and tries to do something that is against the rules •Example: Accessing a non-existent variable, property, method, object, etc (e.g. a method name is misspelled) •Sources of these can be determined by a careful reading of the code, but unfortunately, not always!