Friday, November 13, 2015

CP7203 PRINCIPLES OF PROGRAMMING LANGUAGES

CP7203   PRINCIPLES OF PROGRAMMING LANGUAGES

UNIT I           SYNTAX AND SEMANTICS 

Evolution of programming languages – describing syntax – context-free grammars – attribute grammars – describing semantics – lexical analysis – parsing – recursive-decent – bottom-up parsing  
UNIT II         DATA, DATA TYPES, AND BASIC STATEMENTS

 Names – variables – binding – type checking – scope – scope rules – lifetime and garbage collection – primitive data types – strings – array types – associative arrays – record types – union types – pointers and references – Arithmetic expressions – overloaded operators – type conversions – relational and boolean expressions – assignment statements – mixed-mode assignments – control structures – selection – iterations – branching – guarded statements  

UNIT III       SUBPROGRAMS AND IMPLEMENTATIONS

Subprograms – design issues – local referencing – parameter passing – overloaded methods – generic methods – design issues for functions – semantics of call and return – implementing simple subprograms – stack and dynamic local variables – nested subprograms – blocks – dynamic scoping  

UNIT IV       OBJECT-ORIENTATION, CONCURRENCY, AND EVENT HANDLING 

Object-orientation – design issues for OOP languages – implementation of object-oriented constructs – concurrency – semaphores – monitors – message passing – threads – statement level concurrency – exception handling – even handling  

UNIT V       FUNCTIONAL AND LOGIC PROGRAMMING LANGUAGES

Introduction to lambda calculus – fundamentals of functional programming languages – Programming with Scheme – Programming with ML – Introduction to logic and logic programming – Programming with Prolog – multi-paradigm languages 

REFERENCES: 

1. Robert W. Sebesta, “Concepts of Programming Languages”, Tenth Edition, Addison Wesley, 2012. 
2. Michael L. Scott, “Programming Language Pragmatics”, Third Edition, Morgan Kaufmann, 2009. 3. R. Kent Dybvig 
4.  “The Scheme programming language”, Fourth Edition, MIT Press, 2009. 
5. Jeffrey D. Ullman, “Elements of ML programming”, Second Edition, Prentice Hall, 1998. 
6. Richard A. O'Keefe, “The craft of Prolog”, MIT Press, 2009. 
7. W. F. Clocksin and C. S. Mellish, “Programming in Prolog: Using the ISO Standard”, Fifth Edition, Springer, 2003.   


No comments:

Post a Comment