National Institute of Technology Rourkela

राष्ट्रीय प्रौद्योगिकी संस्थान राउरकेला

ଜାତୀୟ ପ୍ରଯୁକ୍ତି ପ୍ରତିଷ୍ଠାନ ରାଉରକେଲା

An Institute of National Importance

Syllabus

Course Details

Subject {L-T-P / C} : CS3101 : Principles of Programming Languages { 3-0-0 / 3}

Subject Nature : Theory

Coordinator : Anup Nandy

Syllabus

Module 1 :

The Role of Programming Languages: Programming Paradigms, Syntactic Structure: Expression Notations, Abstract Syntax Trees, Lexical Syntax, Context -Free Grammars, Grammars for Expressions, Variants of Grammars
Statements: Structured Programming, Types: Data Representation Object Oriented
Programming: Groupings of Data and Operations: - Constructs fro Program Structuring, Information Hiding, Program
Design with Modules, Modules and Defined Types, Class Declarations in C++, Dynamic Allocation I C++, Templates:
Parameterized Types, Implementation of Objects in C++. Object-Oriented Programming: - What is an Object?,
Object-Oriented Thinking, Inheritance, Object-Oriented Programming in C++, An extended C++ example, Derived
Classes and information Hiding, Objects in Smalltalk, Smalltalk Objects have self Functional programming: Elements
of Functional Programming, functional Programming in a Typed Languages, functions as First-Class Values, ML,
Functional Programming with Lists, Introduction to LISP and Prolog Languages and their implementation on development of Expert System.

Course Objective

1 .

To introduce a new concept of programming paradigm.
To discuss different programming framework.

Course Outcome

1 .

Efficiency in understanding programing background .
Improvement of student's skill for implementing different types of programing languages in real world applications.

Essential Reading

1 .

R. Sethi, Programming Languages – Concepts & Constructs, Pearson Education

2 .

R. W. Sebesta, Concepts of Programming Languages, Addison-Wesley

Supplementary Reading

1 .

M. L. Scott, Programming Language Pragmatics, Morgan Kaufmann

2 .

T. W. Pratt & M. V. Zelkowitz, Programming Languages: Design and Implementation, Prentice-Hall