CS403 Programming Paradigms
CS403 Programming Paradigms
COM
Course Year of
Course Name L-T-P Credits
code Introduction
CS403 PROGRAMMING PARADIGMS 3-0-0-3 2016
Course Objectives:
To introduce the basic constructs that underlie all programming languages
To introduce the basics of programming language design and implementation
To introduce the organizational framework for learning new programming languages.
Syllabus:
Names, Scopes, and Bindings - Binding Time, Scope Rules, Storage Management, Overloading,
Polymorphism; Control Flow - Expression Evaluation, Structured and Unstructured Flow, Non-
determinacy; Data Types - Type Systems, Type Checking, Equality Testing and Assignment;
Subroutines and Control Abstraction - Static and Dynamic Links, Calling Sequences, Parameter
Passing, Exception Handling, Co-routines; Functional and Logic Languages; Data Abstraction
and Object Orientation -Encapsulation, Inheritance, Dynamic Method Binding; Innovative
features of Scripting Languages; Concurrency - Threads, Synchronization, Language-Level
Mechanisms; Run-time program Management.
Expected Outcome:
The Students will be able to :
i. compare scope and binding of names in different programming languages
ii. analyze control flow structures in different programming languages
iii. appraise data types in different programming languages
iv. analyze different control abstraction mechanisms
v. appraise constructs in functional, logic and scripting languages
vi. analyze object oriented constructs in different programming languages
vii. compare different concurrency constructs
viii. interpret the concepts of run- time program management
Text book:
1. Scott M L, Programming Language Pragmatics, 3rd Edn., Morgan Kaufmann Publishers,
2009.
References:
1. David A Watt, Programming Language Design Concepts, Wiley Dreamtech, 2004
2. Ghezzi C and M. Jazayeri, Programming Language Concepts, 3rd Edn, Wiley.1997
3. Kenneth C Louden, Programming Languages: Principles and Practice, 3rd Edn., Cengage
Learning, 2011.
4. Pratt T W, M V Zelkowitz, and T. V. Gopal, Programming Languages: Design and
Implementation, 4th Edn., Pearson Education, 2001
5. R W Sebesta, Concepts of Programming Languages, 11th Edn., Pearson Education, 2015
6. Ravi Sethi, Programming Languages: Concepts & Constructs, 2nd Edn., Pearson
Education, 2006
7. Tucker A B and R E Noonan, Programming Languages: Principles and Paradigms, 2nd
Edn,McGraw Hill, 2006.
Course Plan
End
Sem.
Module Contents Hours
Exam
Marks
Names, Scopes and Bindings:- Names and Scopes, Binding Time,
Scope Rules, Storage Management, Binding of Referencing
Environments. 7 15 %
I Control Flow: - Expression Evaluation, Structured and
Unstructured Flow, Sequencing, Selection, Iteration, Recursion,
Non-determinacy.
Data Types:-Type Systems, Type Checking, Records and Variants,
II Arrays, Strings, Sets, Pointers and Recursive Types, Lists, Files 15 %
and Input/Output, Equality Testing and Assignment. 7