Download/Source url :
By Dr.S.Arun Kumar, Department of Computer Science & Engineering ,IIT Delhi.
PRINCIPLES OF PROGRAMMING LANGUAGES SYLLABUS :
Source : http://jntuk.edu.in
UNIT I :
Preliminary Concepts: Reasons for studying, concepts of programming languages, Programming
domains, Language Evaluation Criteria, influences on Language design, Language categories,
Programming Paradigms – Imperative, Object Oriented, functional Programming , Logic Programming.
Programming Language Implementation – Compilation and Virtual Machines, programming environments.
UNIT II :
Syntax and Semantics: general Problem of describing Syntax and Semantics, formal methods of
describing syntax - BNF, EBNF for common programming languages features, parse trees, ambiguous
grammars, attribute grammars, denotational semantics and axiomatic semantics for common
programming language features.
UNIT III :
Data types: Introduction, primitive, character, user defined, array, associative, record, union, pointer and
reference types, design and implementation uses related to these types. Names, Variable, concept of
binding, type checking, strong typing, type compatibility, named constants, variable initialization.
UNIT IV :
Expressions and Statements: Arithmetic relational and Boolean expressions, Short circuit evaluation
mixed mode assignment, Assignment Statements, Control Structures – Statement Level, Compound
Statements, Selection, Iteration, Unconditional Statements, guarded commands.
Subprograms and Blocks: Fundamentals of sub-programs, Scope and lifetime of variable, static and
dynamic scope, Design issues of subprograms and operations, local referencing environments, parameter
passing methods, overloaded sub-programs, generic sub-programs, parameters that are sub-program
names, design issues for functions user defined overloaded operators, co routines.
UNIT VI :
Abstract Data types: Abstractions and encapsulation, introductions to data abstraction, design issues,
language examples, C++ parameterized ADT, object oriented programming in small talk, C++, Java, C#,
Concurrency: Subprogram level concurrency, semaphores, monitors, massage passing, Java threads, C#
UNIT VII :
Exception handling : Exceptions, exception Propagation, Exception handler in Ada, C++ and Java.
Logic Programming Language : Introduction and overview of logic programming, basic elements of
prolog, application of logic programming.
UNIT VIII :
Functional Programming Languages: Introduction, fundamentals of FPL, LISP, ML, Haskell, application
of Functional Programming Languages and comparison of functional and imperative Languages.
TEXT BOOKS :
1. Concepts of Programming Languages Robert .W. Sebesta 6/e, Pearson
2.. Programming Languages –Louden, Second Edition, Thomson.
1. Programming languages –Ghezzi, 3/e, John Wiley
2. Programming Languages Design and Implementation – Pratt and
Zelkowitz, Fourth Edition PHI/Pearson Education
3. Programming languages –Watt, Wiley Dreamtech
4. LISP Patric Henry Winston and Paul Horn Pearson Education.
5. Programming in PROLOG Clocksin, Springer