Principles of Programming Languages pdf Notes
Principles of Programming Languages pdf Notes – PPL pdf Notes – PPL Notes
PPL Latest Material Links
PPL Old Material Links
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.
Lecturer Notes – Unit 1
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.
Lecturer Notes –Unit 2
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.
Lecturer Notes –Unit 3
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.
Lecturer Notes – Unit 4
- 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.
Lecturer Notes – Unit 5
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#, Ada 95
Concurrency: Subprogram level concurrency, semaphores, monitors, massage passing, Java threads, C# threads.
Lecturer Notes –Unit 6
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.
Lecturer Notes –Unit 7
UNIT VIII :
- Functional Programming Languages: Introduction, fundamentals of FPL, LISP, ML, Haskell, application of Functional Programming Languages and comparison of functional and imperative Languages.
- Scripting Language:Pragmatics, Key Concepts, Case Study: Python – values and types, variables, storage and control , Bindings and Scope ,
- Procedural Abstraction, Data Abstraction, Seperate Compilation, Module Library.
Lecturer Notes –Unit 8
TEXT BOOKS : Principles of Programming Languages Notes – PPL Notes – PPL Pd Notes
- Concepts of Programming Languages Robert .W. Sebesta 6/e, Pearson Education.
- Programming Languages –Louden, Second Edition, Thomson.
REFERENCES : Principles of Programming Languages Notes – PPL Notes – PPL Pd Notes
- Programming languages –Ghezzi, 3/e, John Wiley
- Programming Languages Design and Implementation – Pratt and Zelkowitz, Fourth Edition PHI/Pearson Education
- Programming languages –Watt, Wiley Dreamtech
- LISP Patric Henry Winston and Paul Horn Pearson Education.
- Programming in PROLOG Clocksin, Springer