0% found this document useful (0 votes)
77 views3 pages

FIRST SEMESTER 2020-2021: 1. of Programming Languages 10 Edition 1

The document provides details about the Principles of Programming Languages course offered in the first semester of 2020-2021. The course aims to introduce various programming paradigms and concepts related to programming languages like naming, binding, scoping, data types, sub-programs, and exception handling. It will cover these topics through lectures, assignments, and evaluations including three in-semester tests, four quizzes, and a comprehensive exam with open book policy for all evaluations except the comprehensive exam. The course will be taught by Dr. R Gururaj and others using the textbook Concepts of Programming Languages and will have consultation hours on Thursdays from 5-6 PM.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
77 views3 pages

FIRST SEMESTER 2020-2021: 1. of Programming Languages 10 Edition 1

The document provides details about the Principles of Programming Languages course offered in the first semester of 2020-2021. The course aims to introduce various programming paradigms and concepts related to programming languages like naming, binding, scoping, data types, sub-programs, and exception handling. It will cover these topics through lectures, assignments, and evaluations including three in-semester tests, four quizzes, and a comprehensive exam with open book policy for all evaluations except the comprehensive exam. The course will be taught by Dr. R Gururaj and others using the textbook Concepts of Programming Languages and will have consultation hours on Thursdays from 5-6 PM.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 3

FIRST SEMESTER 2020-2021

Course Handout Part II


Date: 17/08/2020
In addition to Part-I (General Handout for all courses appended to the time table) this portion gives further
specific details regarding the course.

Course No. : CS F301


Course Title : Principles of Programming Languages
Instructor-in-Charge : Dr. R Gururaj
Dr. Jabez J Christopher, Mr.Gourish G, Mr.P. Venkata Krishna

1.Scope and Objectives of the Course:


Programming languages play a significant role in writing programs (set of instructions) for execution by
computers. High-level programming languages facilitate writing computer programs with ease without having
to understand the HW specifics on which the programs are run. With this we can focus on solution to the
problem rather than worrying about HW details.
This course covers features of programming languages and introduces the main programming paradigms and
their applications. It covers approaches for specifying the structure/syntax of the programming languages with
details about the semantics of the features of programming languages. Also provides an overview of lexical and
Syntax analysis. This also covers naming, binding and scoping concepts pertaining to programming languages.
This course also details the structure of sub-programs and implementation specifics, with parameter passing
approaches and various aspects of runtime environments like global and local data, code, function call stacks,
dynamically allocated data. This course also gives a briefing on runtime support required for exception handling
and concurrent programming. It also gives an idea about concepts of Logic programming. It also covers briefing
about concepts related to Functional programming.
The Course Objectives are:
 To list various programming paradigms, with a comparison on various important features.
 To understand concepts like- naming, binding and scoping concepts related to programming languages.
 To understand the aspects of describing the structure/syntax of programming languages.
 To understand the concepts like- Data types, Abstract data types, type checking etc.
 To understand the structure and implementation of sub-programs with parameter passing approaches.
 To understand the exception handling and concurrent programming aspects.
 To get an overview of fundamentals of Logic and Functional programming paradigms.

2. Pre requisites: C and Java programming


3.Textbooks:
1. T1. Robert Sebesta , Concepts of programming languages 10th Edition
Reference books:
1. R1 Ravi Sethi, Programming Languages - Concepts and Constructs Pearson Education. 2nd Edition.
4.Course Plan:
Chapter in
Lecture
Learning Outcomes Topics to be covered the Text
No.
Book
To provide an overview of the
course and its importance.
Introduction to PPL with
1-2 List the criteria for judging PLs. Ch.1 (T1)
Preliminaries
List the categories/domains of
PLs..
To understand the evolution of
programming languages.
Evolution of Major Programming
To understand the environments that Ch.2 (T1)
3-5 languages.
influenced the development of certain
Important Programming Paradigms.
languages.
Issues in language design.
Express formal syntax of programming
Describing Syntax and Semantics of
language using BNF
PLs. Chapter 3,
4(T1) &
6-12 Methods of semantic description
The Process of Lexical and Syntax Ch.2 (R1)
Analysis
To get an Overview of Lexical and
.
Syntax Analysis
Understanding the fundamental semantic
issues of variables. Names, bindings and scopes of
12-14 Ch.5 (T1)
To list and understand the attributes of variables. Type checking.
variables.
Identify the needs for different data Chapter 6,
types and their characteristics. Types: Data Representation, Primitive 11(T1) &
15-18
Compare different implementation of and Structured Data types, ADTs. Chapter 4
data types. (R1)
Introduction to procedures, Recursion,
Fundamentals of Sub-programs. Ch.9, 10 (T1)
Parameter Passing
Implementing sub-programs. To & Ch.5(R1)
Methods, Call-by-Value, Call-by-
19-21 understand the different parameter
Reference, Call by Value Result. Scope
passing mechanism, And class
Functions and Call Stacks,
notes
Dynamically allocated data and heaps
Understanding Concurrent programs at Concurrent execution of statements,
various levels. sub-programs.
22-24 Ch.13 & 14
To get an overview of Exception Fundamentals of PL Exception
Handling and requires support. Handling mechanism.
Logic Programming: Relations, First
Formulate problems using Logic Ch. 15(T1)
25-27 Order Logic, Logic Programming and
programming Ch. 11(R1)
Prolog.
Fundamentals of Functional
Formulate problems using functional Ch. 16(T1) &
27-30 Programming, Applications of
programming Ch.8,9,10(R1)
Functional Programming.
5. Evaluation scheme:
Component Duration Date & Time Weightage Remarks
Test-1 30 Mins. September 10 –September 20 15% Open Book
(during scheduled class Hour)
Test-2 30 Mins. October 9-October 20(during 15% Open Book
scheduled class hour)
Test-3 30 Mins. November 10-November 20 15% Open Book
during scheduled class hour)
Quizzes (four, and 2 of TBA 20% Open Book
them before mid-sem
grading)
Comprehensive Exam 2 Hrs. TBA by Timetable Division 35% Open Book
6. Make-up-Policy: Make-up (excepting Compre) may be given for genuine cases with prior permission
by IC, and after rigorous scrutiny. For Comprehensive exam, make-up has to be approved and scheduled by
AUGSD.
7. Course Notices:
All notices pertaining to this course will be displayed on CMS Course webpage.
8. Consultation: Thu, 5-6 PM. Meeting link will be shared on CMS.
9. Academic Honesty and Integrity Policy: Academic honesty and integrity are to be maintained by all
the students throughout the semester and no type of academic dishonesty is acceptable.
Instructor In-charge
CS F301

You might also like