0% found this document useful (0 votes)
85 views36 pages

Course File-Ppl

The document is a course file for the Principles of Programming Languages (CS3112PE) at Narsimha Reddy Engineering College, detailing the program's vision, mission, course objectives, and outcomes. It includes a syllabus, academic calendar, lesson plans, and various learning methodologies aimed at enhancing students' understanding of programming paradigms and language design. Additionally, it outlines the mapping of course outcomes to program outcomes and specific learning methodologies to be employed throughout the course.

Uploaded by

lagishettisuresh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
85 views36 pages

Course File-Ppl

The document is a course file for the Principles of Programming Languages (CS3112PE) at Narsimha Reddy Engineering College, detailing the program's vision, mission, course objectives, and outcomes. It includes a syllabus, academic calendar, lesson plans, and various learning methodologies aimed at enhancing students' understanding of programming paradigms and language design. Additionally, it outlines the mapping of course outcomes to program outcomes and specific learning methodologies to be employed throughout the course.

Uploaded by

lagishettisuresh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

NARSIMHA REDDY ENGINEERING COLLEGE

(Autonomous)
Approved by AICTE, New Delhi & Affiliated to JNTUH, Hyderabad
Accredited by NBA & NAAC with A Grade
COURSE FILE
Program Name :Btech
Name of the Course : Principles of Programming Languages
Course Code : CS3112PE
Semester and Year : III - I
Faculty Name : G. sangeetha
S.NO CONTENTS
1 Vision, Mission, COs, POs, PSOs, PEOs

2 Academic calendar

3 Syllabus

4 CO/PO mapping

5 Nominal Rolls of the Students

6 Time table

7 Lesson Plan

8 Unit wise Question Bank

9 Old Question Papers

10 Question Papers (CIA & SEE)

11 Tutorial sheets

Learning Methodologies: Experiential learning (Industrial visits, Internships,


Mini Projects, Academic Projects, Guest Lectures, Student Workshops etc.,),
Problem Solving methodologies (assignments, quiz, case study etc.)
12
Note:1. At least TWO learning Methodologies to be included in your course
2. The above methodologies for illustration, you may add more
13 Subject notes/PPTs/self study material

Feedback on Curriculum Design and development


14

15 CO/PO attainment, analysis and Action taken report


PPL(CS3112PE)

1.Vision, Mission, COs, POs, PSOs, PEOs

• Vision of the Department:

To emerge as a center of excellence with international reputation by adapting the rapid


advancements in the computer specialization fields.
• Mission of the Department:
1. To provide a strong theoretical and practical background in the area of computer science with
an emphasize on software development
2. To inculcate Professional behavior, strong ethical values, leadership qualities, research
capabilities and lifelong learning.
3. To educate students to be effective problem solvers, apply knowledge with social sensitivity
for the betterment of the society and humanity as a whole.
• COs:
CO1 Evaluate to enhance and express the syntx and semantics of programming language
CO2 Evaluate the names expressions or key concepts in the implementation of programming
language
CO3 Demonstrate and able to analyze the concepts of subprograms and ADT
CO4 Examine and illustrate the concepts of OOPS and concurrency levels
CO5
Evaluate lambda terms using Functional,Logic and Scripting language and their
benefits

• POs:
PO1. Engineering knowledge: Apply the knowledge of basic sciences and
1 fundamental engineering concepts in solving engineering problems.

PO2. Problem analysis: Identify and define engineering problems, conduct


experiments and investigate to analyze and interpret data to arrive at substantial
2
conclusions.

PO3. Design/development of solutions: Propose an appropriate solution for


engineering problems complying with functional constraints such as economic,
3
environmental, societal, ethical, safety and sustainability.

CSE, NRCM 3 G.sangeetha, Asst.Professor


PPL(CS3112PE)

PO4. Conduct investigations of complex problems: Perform investigations, design


and conduct experiments, analyze and interpret the results to provide valid
4
conclusions.

PO5. Modern tool usage: Select or create and apply appropriate techniques and IT
5 tools for the design & analysis of the systems.

PO6. The engineer and society: Apply reasoning informed by the contextual
knowledge to assess societal, health, safety, legal and cultural issues and the
6
consequent responsibilities relevant to the professional engineering practice.

PO7. Environment and sustainability: Demonstrate professional skills and


contextual reasoning to assess environmental or societal issues for sustainable
7
development.

PO8. Ethics: Apply ethical principles and commit to professional ethics and
8 responsibilities and norms of the engineering practice.

PO9. Individual and team work: Function effectively as an individual, and as a


9 member or leader in diverse teams, and in multi-disciplinary situations.

PO10. Communication: Communicate effectively among engineering community,


being able to comprehend and write effectively reports, presentation and give /
10
receive clears instructions.

PO11. Project management and finance: Demonstrate and apply engineering &
11 management principles in their own / team projects in multidisciplinary environment.

PO12. Life-long learning: Recognize the need for, and have the ability to engage in
12 independent and lifelong learning.

PSOs:
1. PSO1: To provide effective and efficient real time solutions using acquired knowledge in
various domains to crack problem using suitable mathematical analysis, data structure and
suitable algorithm

CSE, NRCM 4 G.sangeetha, Asst.Professor


PPL(CS3112PE)

2. PSO2: To develop environmental and sustainable engineering solution having global and
societal context using modern IT tools.
3. PSO3: To exhibit professional and leadership skills with ethical values dealing diversified
projects with excellent communication and documentation qualities.

• PEOs:
1. PEO-I: To provide students with a solid foundation in mathematics, engineering, basic
science fundamentals required to solve computing problems and also to pursue higher studies
and research.
2. PEO-IITo train students with good Computer Science and Engineering breadth so as to
comprehend, analyze, design and create innovative computing products and solutions for real
life problems.
3. PEO-III To inculcate in students professional and ethical attitude, communication skills,
teamwork skills, multi-disciplinary approach and an ability to relate computer engineering
issues with social awareness.

3.SYLLABUS

• Course Objectives
• Introduce important paradigms of Programming Languages
• To Provide conceptual understanding ofhigh-level language design and implementation
• Topic include programming paradigms;syntax and semantics,data types, Expressions
and statements;subprogramsand blocks;abstract data types,concurrency;functional and
logic programming languages;and scripting languages.

• Course Outcomes

• Acquire the skills for expressing syntax and semantics informal notation.
• Identify and apply suitable programing paradigm for a given computing application.
• Gain knowledge of and able to compare the features of various programming language.

CSE, NRCM 5 G.sangeetha, Asst.Professor


PPL(CS3112PE)

MODULE-I

Preliminary Concepts: Reasons for studying concepts of programming languages,


programming domains, language evaluation criteria, influences on language design, language
categories, language design trade-offs, implementation methods, programming environments,
Evolution of Major Programming Languages.
Syntax and Semantics: General problem of describing syntax, formal methods of describing
syntax, attribute grammars, describing the meanings of programs

MODULE-II

Names, Bindings, and Scopes: Introduction, names, variables, concept of binding, scope,
scope and lifetime, referencing environments, named constants
Data types: Introduction, primitive, character, string types, user defined ordinal types, array,
associative arrays, record, tuple types, list types, union types, pointer and reference types,
type checking, strong typing, type equivalence

Expressions and Statements: Arithmetic expressions, overloaded operators, type


conversions, relational and boolean expressions, short- circuit evaluation, assignment
statements, mixed-mode assignment
Control Structures – introduction, selection statements, iterative statements, unconditional
branching, guarded commands.

MODULE-III

Subprograms: Fundamentals of subprograms, design issues for subprograms, local


referencing environments, parameter passing methods, parameters that are subprograms,
calling subprograms indirectly, overloaded subprograms, generic subprograms, design issues
for functions, user defined overloaded operators, closures, co routines
Implementing subprograms: General semantics of calls and returns, implementing simple
subprograms, implementing subprograms with stack-dynamic local variables, nested
subprograms, blocks, implementing dynamic scoping
Abstract Data types: The concept of abstraction, introductions to data abstraction, design

CSE, NRCM 6 G.sangeetha, Asst.Professor


PPL(CS3112PE)

issues, language examples, parameterized ADT, encapsulation constructs, naming


encapsulations

MODULE-IV

Object Oriented Programming: Design issues for OOP, OOP in Smalltalk, C++, Java, Ada
95, Ruby, Implementation of Object-Oriented constructs.
Concurrency: introduction, introduction to subprogram level concurrency, semaphores,
monitors, message passing, Ada support for concurrency, Java threads, concurrency in
functional languages, statement level concurrency.
Exception Handling and Event Handling: Introduction, exception handling in Ada, C++,
Java, introduction to event handling, event handling with Java and C#.

MODULE-V

Functional Programming Languages: Introduction, mathematical functions, fundamentals


of functional programming language, LISP, support for functional programming in primarily
imperative languages, comparison of functional and imperative languages
Logic Programming Language: Introduction, an overview of logic programming, basic
elements of prolog, deficiencies of prolog, applications of logic programming.
Scripting Language: Pragmatics, Key Concepts, Case Study: Python – Values and Types,
Variables, Storage and Control, Bindings and Scope, Procedural Abstraction, Data
Abstraction, Separate Compilation, Module Library. (Text Book 2)

TEXT BOOKS:

1. Concepts of Programming Languages, Robert .W. Sebesta 10th edition, Pearson


Education.
2. Programming Language Design Concepts, D. A. Watt, Wiley India Edition.

REFERENCE BOOK:

1. Programming Languages, A.B. Tucker, R.E. Noonan, TMH.


2. Programming Languages, K. C. Louden and K A Lambert., 2nd edition, Thomson 2003.
.

CSE, NRCM 7 G.sangeetha, Asst.Professor


PPL(CS3112PE)

4.List of COs (Action verbs as per Bloom's Taxonomy)

Course Course Outcomes (CO’s)


Code.CO No
At the end of the course student will be able to

Classify, Compare, Contrast, Explain, Illustrate the use of formal description for a
C415.1 programming language and different programming paradigms

Apply, build, Develop, Model, and Construct syntax and semantics to different
C415.2
programming languages

Choose, Define, Find, What, Why the basic concepts of Variables, Storage, Binding
C415.3
and Scope rules of different languages

C415.4 Construct, Improve, Design, Solve, and Develop a Concurrency Control

Compare, Evaluate, Explain, Justify, Determine the basics of Prolog and ML,
C415.5
Haskell, Python languages

Course Outcome (CO)-Program Outcome (PO) Matrix:

PO PO[ PO[ PO[ PO[ PO[ PO[ PO[ PO[ PO[1 PO[1 PO[1
1 2] 3] 4] 5] 6] 7] 8] 9] 0] 1] 2]
CO[1] 3 2 2 2 2 3 2 2 3 3 0 2

CO[2] 2 2 2 2 2 1 1 0 1 0 0 1
CO[3] 3 2 1 3 2 2 1 1 0 0 0 2
CO[4] 3 1 1 1 2 2 1 1 0 0 0 1
CO[5] 3 2 1 3 2 2 1 1 0 0 0 1
Avera 2.8 1.8 1.4 2.2 2 2 1.2 1 0.8 0.6 0 1.4
ge

5.Mapping of course outcomes with PSO’s


CO- PSO mapping

CSE, NRCM 8 G.sangeetha, Asst.Professor


PPL(CS3112PE)

PSO[1] PSO[2] PSO[3]


CO[1] 1 1 0

CO[2] 1 1 0

CO[3] 1 3 1

CO[4] 1 1 0

CO[5] 1 0 0

Average 1 1.2 0.2

6.INDIVIDUAL TIME TABLE

M.SOWMYA

III-1 CSE

I II III IV V VI VII
Day
10.10 – 12.40 02.20
& 09.10 – 11.00 – 11.50 – 03.10 –
11.00 - 01.20 – 02.20 –
Time 10.10 11.50 12.40 04.00
01.20 03.10
MON DS CS PP LAB
TUE CS AIML AIML
WED DS PP LAB
THU AIML PP LAB DS
FRI AIML CS CS
SAT AIML DS CS DS

7.DETAILED LECTURE PLAN

Metho
d of
Suggest
Tentative Topics as per JNTUH Topic Actually Teachi
S.No ed
Date Syllabus Covered ng
Book
BB/PP
T
UNIT I
PRELIMINARY CONCEPTS
1 23-08-2022 Reasons for studying Reasons for studying T1,T2 BB

concepts of programming concepts of


2 24-08-2022 languages T1,T2 BB
programming

CSE, NRCM 9 G.sangeetha, Asst.Professor


PPL(CS3112PE)

languages

Programming domai
3 25-08-2022 Programming domains T2 BB
ns
Language Evaluation
4 26-08-2022 Language Evaluation Criteria T2 BB
Criteria
influences on
influences on Language
5 29-08-2022 Language design, T2 BB
design, Language categories
Language categories
Programming
Programming Paradigms –
6 30-08-2022 Paradigms – T2 BB
Imperative,
Imperative,

7 30-08-2022 Object Oriented, Object Oriented, T2 BB

functional
8 01-09-2022 functional Programming, T2 BB
Programming,

9 02-09-2022 Logic Programming Logic Programming T2 BB

Programming
Programming Language
Language
Implementation –
10 05-09-2022 Implementation – T2 BB
Compilation and Virtual
Compilation and
Machines,.
Virtual Machines,.

programming enviro
11 06-09-2022 programming environments T2 BB
nments

general Problem of general Problem of


12 08-09-2022 describing Syntax and describing Syntax T2 BB
Semantics, and Semantics,
16 09-09-2022 attribute grammars attribute grammars T2 BB
describing the meanings of describing the
17 12-09-2022
programs meanings of

CSE, NRCM 10 G.sangeetha, Asst.Professor


PPL(CS3112PE)

programs
UNIT - II
NAMES, BINDINGS AND SCOPES

Introduction, names, Introduction, names,


18 13-09-2022 variables variables T2 BB

concept of binding,
19 15-09-2022 concept of binding, scope scope T2 BB

20
16-09-2022 scope and lifetime scope and lifetime T2 BB

referencing
referencing environments,
21 19-09-2022 named constants environments, named T2 BB
constants

Introduction,
Introduction, primitive, primitive, character,
character, user defined, array, user defined, array,
22 20-09-2022 associative, record, union, associative, record, T2 BB

pointer and reference types union, pointer and


reference types

design and
design and implementation
23 22-09-2022 uses related to these types. implementation uses T2 BB
related to these types.

Names, Variable,
Names, Variable, concept of
24 23-09-2022 binding, type checking, concept of binding, T2 BB
type checking,

strong typing, type strong typing, type


25 26-09-2022 compatibility, compatibility, T2 BB

CSE, NRCM 11 G.sangeetha, Asst.Professor


PPL(CS3112PE)

named constants, variable named constants,


26 27-09-2022 initialization variable initialization T2 BB

Arithmetic relational
Arithmetic relational and
27 29-09-2022 Boolean expressions, and Boolean T2 BB
expressions,

Short circuit
Short circuit
evaluation mixed
evaluation mixed mode
28 30-09-2022 assignment, Assignment mode assignment, T2 BB
Assignment
Statements
Statements

Control Structures – Control Structures –


29 10-10-2022 T2 BB
Statement Level Statement Level
Iteration, Iteration,

30 11-10-2022 Compound Statements, Compound Statemen T2 BB


Selection ts, Selection

Unconditional
31 13-10-2022 Unconditional Statements, Statements, guarded T2 BB
guarded commands. commands.
UNIT - III
SUBPROGRAMS AND BLOCKS

Fundamentals of sub- Fundamentals of sub-


32 14-10-2022 programs programs T2 BB

Scope of life time of Scope of life time of

33 17-10-2022 variables, static and variables, static and T2 BB


dynamic scope dynamic scope

Design issues of Design issues of


34 18-10-2022 T2 BB
subprograms and subprograms and

CSE, NRCM 12 G.sangeetha, Asst.Professor


PPL(CS3112PE)

operations, local operations, local


referencing environments referencing
environments

Parameter passing
Parameterpassingmethodso
methods
35 20-10-2022 verloaded T2 BB
overloaded
subprograms
subprograms

generic sub-programs, generic sub-programs,


36 21-10-2022 overloaded overloaded T2 BB

37 31-10-2022 sub-program names, sub-program names, T2 BB

parameters that are design parameters that are


38 01-11-2022 issues for functions user design issues for T2 BB
defined functions user defined
39 03-11-2022 operators Operators T2 BB
40 03-11-2022 co routines co routines T2 BB
General semantics of calls General semantics of
41 04-11-2022 T2 BB
and returns calls and returns
implementing simple implementing simple
42 07-11-2022 T2 BB
subprograms, subprograms,
implementing
implementing subprograms subprograms with
43 10-11-2022 T2 BB
with stack-dynamic local stack-dynamic local
variables variables
nested nested
44 11-11-2022 T2 BB
subprograms, blocks subprograms, blocks
implementing dynamic implementing dynamic
45 14-11-2022 T2 BB
scoping scoping
The concept of abstraction, The concept of
46 15-11-2022 T2 BB
introductions to data abstraction,

CSE, NRCM 13 G.sangeetha, Asst.Professor


PPL(CS3112PE)

abstraction introductions to data


abstraction
design
47 17-11-2022 design issues, language T2 BB
issues, language examples, examples,
parameterized ADT,
48 18-11-2022 parameterized ADT, encapsulation T2 BB
encapsulation constructs constructs
naming naming
49 21-11-2022 T2 BB
encapsulations encapsulations
Design issues for
Design issues for OOP, OOP
50 22-11-2022 in Smalltalk, C++, Java OOP, OOP in T2 BB
Smalltalk, C++, Java

UNIT - IV

OBJECT ORIENTED PROGRAMMING


Ada
Ada 95, Ruby,

51 28-11-2022 95, Ruby, Implementation of Implementation of T2 BB


Object-Oriented constructs Object-Oriented
constructs

introduction,
introduction, introduction to
introduction to
52 29-11-2022 subprogram level subprogram level T2 BB
concurrency
concurrency

semaphores,
semaphores,
53 01-12-2022 monitors, message passing, monitors, message T2 BB
passing,

54 02-12-2022 Ada support for concurrency Ada support for T2 BB

CSE, NRCM 14 G.sangeetha, Asst.Professor


PPL(CS3112PE)

concurrency

Java threads,
Java threads, concurrency in
55 05-12-2022 functional languages, concurrency in T2 BB
functional languages,

statement level
56 06-12-2022 statement level concurrency. concurrency. T2 BB

Introduction,
Introduction, exception
57 08-12-2022 exception handling in T2 BB
handling in Ada
Ada

C++, C++,

58 09-12-2022 Java, introduction to event Java, introduction to T2 BB


handling event handling

event handling with Java and event handling with


59 12-12-2022 C#. Java and C#. T2 BB

UNIT-V

FUNCTIONAL PROGRAMMING
Introduction,
Introduction, fundamentals of
60 12-12-2022 fundamentals of T1,T2 BB
FPL, LISP,
FPL, LISP,

61 15-12-2022 ML, Haskell, ML, Haskell, T1,T2 BB

application of
application of Functional Functional
Programming Languages and Programming
62 15-12-2022 T1,T2 BB
comparison of functional and Languages and
imperative Languages comparison of
functional and

CSE, NRCM 15 G.sangeetha, Asst.Professor


PPL(CS3112PE)

imperative Language
s
Scripting
Scripting Language: Language:
63 16-12-2022 T1,T2 BB
Pragmatics, Key Concepts Pragmatics, Key
Concepts
Case Study: Python-
Case Study: Python- Values
64 16-12-2022 Values and Types, T1,T2 BB
and Types, Variables,
Variables,
Storage and Control, Storage and Control,
65 19-12-2022 T1,T2 BB
Bindings and Scope Bindings and Scope

Procedural
Procedural Absraction,
Absraction, Separate
66 19-12-2022 Separate Compilation, T1,T2 BB
Compilation, Module
Module Library.
Library.

Introduction, an
Introduction, an overview of
67 20-12-2022 overview of logic T1,T2 BB
logic programming,
programming,

basic basic
68 21-12-2022 T1,T2 BB
elements of prolog, elements of prolog,

deficiencies of
69 22-12-2022 deficiencies of prolog, T1,T2 BB
prolog,

applications of logic applications of logic


70 23-12-2022 T1,T2 BB
programming. programming.

TEXT BOOKS:
• Concepts of Programming Languages Robert .W. Sebesta 8/e, Pearson Education, 2008.

• Programming Language Design Concepts, D. A. Watt, Wiley dreamtech, rp-2007.

CSE, NRCM 16 G.sangeetha, Asst.Professor


PPL(CS3112PE)

REFERENCE BOOKS:
• Programming Languages, 2nd Edition, A. B. Tucker, R. E. Noonan, TMH.

• Programming Languages, K. C. Louden, 2nd Edition, Thomson, 2003.

• LISP Patric Henry Winston and Paul Horn Pearson Education.

• Programming in Prolog, W. F. Clocksin & C. S. Mellish, 5th Edition, Springer.

• Programming Python, M. Lutz, 3rd Edition, O'reilly, SPD, rp-2007.

• Core Python Programming, Chun, II Edition, Pearson Education, 2007.

• Guide to Programming with Python, Michel Dawson, Thomson, 2008

8.Assignment Questions

DEPARTMENT OF CSE

III-B.TECH I SEMESTER- ASSIGNMENT: I

SUBJECT:PPL

• Describe the steps involved in the language evaluation criteria. [CO1, PO1]

• Explain with an example how operator associatively can be incorporated in grammars.


[CO1,PO1,PO2]

CSE, NRCM 17 G.sangeetha, Asst.Professor


PPL(CS3112PE)

• The levels of acceptance of any language depend on the language description. Comment on
this. [CO2,PO1,PO2]

• Describe in your own words, the concept of orthogonality in programming language design.
[CO2,PO1,PO2]

• Evaluate the two approaches for supporting dynamic allocation and deal location for
dynamic length strings. [CO3, PO1]

CSE, NRCM 18 G.sangeetha, Asst.Professor


PPL(CS3112PE)

DEPARTMENT OF CSE

III-B.TECH I SEMESTER- ASSIGNMENT: II

SUBJECT: PPL

• Write a recursive Python function that recursively computes sum of elements in a list of lists.
Sample Input: [1, 2, [3,4], [5,6] ] Expected Result: 21[CO3, PO1,PO2]

• Write a python script to print the following pattern?[CO4,PO1,PO2]


* * * *

* * *
* *
*
• Describe about a function called oops that explicitly raises a Index Error exception when
called. Then write another function that calls oops inside a try/except statement to catch the
error. What happens if you change oops to raise Key Error instead of Index Error? Where do
the names Key Error and Index Error come from? [CO4,PO1,PO2]

• Write a Python program that creates a GUI with a textbox, Ok button and Quit button. On
clicking Ok, the text entered in textbox is to be printed in Python shell; on clicking Quit, the
program should terminate.[CO5,PO1,PO2]

• Illustrate the internal structure of a typical Python module with the suitable example.
[CO5,PO1,PO2].

CSE, NRCM 19 G.sangeetha, Asst.Professor


PPL(CS3112PE)

9.Sample assignment scripts

10.Unit-wise course material

11. Mid exam question papers

DEPARTMENT OF CSE

III-B.TECH I SEMESTER – I MID EXAMINATION

SET - A
SUBJECT: PPL DATE:
MAX. MARKS: 10 TIME:
ANSWER ANY TWO QUESTIONS 2*5=10M
1. a) Explain about the preconditions and post conditions of a given statement mean in axiomatic
semantics. [2M][CO1PO2,,PO3]
b) What is type checking? Differentiate between static and dynamic type checking and give
their relative advantages. [3M][CO2,PO2]
2. a) Describe the steps involved in the language evaluation criteria.[3M][CO1,PO2]
b) What is aliasing? What are the problems associated with it?[2M][CO2,PO2]
3. a) Discuss about language recognizers and language generators. [2M][CO1,PO2]
b) Explain the different parameter passing methods with an example.
[3M][CO3,PO2,PO3]
4. a) Define an array? Explain how to initialize an array? Explain the different types of
arrays .[3M][CO2,PO2,PO3]
b) Explain about co routines.[2M][CO3,PO3]

CSE, NRCM 20 G.sangeetha, Asst.Professor


PPL(CS3112PE)

DEPARTMENT OF CSE AND ALL EMERGING BRANCH

III-B.TECH I SEMESTER – II MID EXAMINATION

SET - A

SUBJECT: PPL DATE:


MAX. MARKS: 10 TIME:

ANSWER ANY TWO QUESTIONS 2*5=10M


1 a) Distinguish between Competitive Synchronization and Cooperation synchronization.
[2M][CO3,PO2]

b) Explain the following with respect to LISP: data types, structures and LISP interpreter.

[3M][CO4,PO2,PO3]

2 a)Explain how Binary semaphore provides solution to the competition synchronization


problem with

example pseudo code. [3M] [CO4,PO2,PO3]

b) Explain the common characteristics of the scripting languages. [2M] [CO5,PO2,PO3]

3 a) Explain the design issues of an exception handling system.[2M][CO4,PO2,PO3]

b) Explain about different Abstract data types in various languages. [3M][CO3,PO2]

4a) Write in lisp for implementing Fibonacci and factorial of ‘n’ number using functions
.[3M][CO4,P02]

b) What is the fundamental difference between a C++ class and an Ada


package?[2M][CO5,PO2]

CSE, NRCM 21 G.sangeetha, Asst.Professor


PPL(CS3112PE)

12.Sample mid answer script (Best, Average & Low)

13.Material collected from Internet/Websites/ PPT’s


WEBSITES:
1.https://www.geeksforgeeks.org

2. https://en.wikipedia.org.

3.https://www.tutorialspoint.com.

14.University Questions / Question Bank


UNIT: 1
SHORT QUESTIONS
• Define Programming Language.
• Difference between sentence and sentential form.
• Define Syntax and Semantics
• Define Parse trees.
• Define Denotational semantics.
• Define Operational semantics.
• Differentiate compiler and interpreter.
• Distinguish simplicity and orthogonality
• Describe language recognizers.
• List out language categories
LONG QUESTIONS
• Explain in detail various phases in the process of compilation?
• Give an example of how aliasing deters reliability?
• Why it is useful for a programmer to have some background in language design?
• How can knowledge of programming language characteristics benefit the whole
computing community?
• Difference between compilation and interpretation?
• What role does the symbol table play in a complier?
• In what fundamental way do operational semantics and denotational semantics differ?

CSE, NRCM 22 G.sangeetha, Asst.Professor


PPL(CS3112PE)

UNIT: 2
SHORT QUESTIONS
• Distinguish static and dynamic scoping.

• Define associative arrays.

• Define guarded commands?

• Distinguish named type and structure type compatibility.

• List the merits of sub range types.

• Differentiate union and enumeration.

• Define data type.

• List the merits of type checking.

• Define user defined data type.

• Define widening and narrowing conversions?

LONG QUESTIONS

• Define the following?


• Stack Dynamic
• Explicit Heap Dynamic
• Implicit Heap Dynamic
• Static
• Difference between Static and Dynamic strings?
• How does operand evaluation order interact with functional side effects?
• What are design issues for character string types?
• Explain pointers, reference types, design issues of pointers, operations on pointers,
pointer problems and implementation of pointer and reference types?
• Describe how the pointers used in C and C++ with examples?

CSE, NRCM 23 G.sangeetha, Asst.Professor


PPL(CS3112PE)

UNIT: 3
SHORT QUESTIONS

• Define scope and lifetime of a variable.


• Explain subprograms in ADA
• Differentiate shallow and deep binding.
• Define local referencing environment.
• Define pass by value
• Define pass by reference
• List the design issues of functions
• Define static scope
• Define dynamic scope
• Difference between procedure and co routines

LONG QUESTIONS
• What are the modes, the conceptual models of transfer, the advantages and disadvantages of
pass by value, pass by result, pass by value-result and pass by reference parameter passing
methods?
• Define Shallow and deep binding for referencing environment of subprograms that have
been passed as parameter?
• Write about Co routines?
• Explain the considerations for choosing parameter passing methods?
• What are the Generic characteristics of subprogram?
• Explain, how multi dimensional arrays can passed as arguments in Ada language?

UNIT: 4
SHORT QUESTIONS

• Define an exception

• Explain threads in C#

• Define concurrency.

CSE, NRCM 24 G.sangeetha, Asst.Professor


PPL(CS3112PE)

• Define monitors.

• Define mutual exclusion.

• Write about message passing

• Define data abstraction.

• Define an abstract data type.

• Write the applications of logic programming languages

• Define deadlock.

LONG QUESTIONS
• Explain the difference Physical and logical concurrency?
• What are three possible levels of concurrency in programs? Explain?
• What is the use of Friend function in C++, Explain with example?
• Write short notes on C# threads?
• What are different states a task can be? Explain?
• Explain In detail Cooperation synchronization?
• Explain detailed compassion of Exception handling capabilities of C++ and those of
Java?
• Explain the following with examples?
• Exception handler
• Disabling an Exception
• Continuation
• How are Exceptions bound to handlers in C++?

UNIT: 5
SHORT QUESTIONS
• Give the meaning of lazy evaluation

• Define procedural abstraction.

CSE, NRCM 25 G.sangeetha, Asst.Professor


PPL(CS3112PE)

• List few characteristics of Python language.

• Define functional language.

• Define imperative language.

• Give the meaning of scripting language.

• List few examples of scripting languages.

• List keywords of Python language.

• List data types of Python language.

• Define the term separate compilation in Python.

LONG QUESTIONS

1) Explain
• Common Lisp
• Haskell
• ML
2) Discuss the applications of functional languages?
3) Explain the difference between Imperative and functional languages?
4) Describe the semantics of COND and LET?
5. Explain the characteristics of scripting languages.
6. List the ways in which ML is significantly different from scheme.
7. Give example of Python code to find the roots of quadratic equation

CSE, NRCM 26 G.sangeetha, Asst.Professor


PPL(CS3112PE)

University Question Paper

R20

Code No: CS3112PE


JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY
HYDERABAD

B.Tech III Year I Semester Examinations,


May/June - 2019 PRINCIPLES OF
PROGRAMMING LANGUAGES

(Computer Science and Engineering)

Time:3hours Max. Marks:75

Note: This question paper contains two parts A andB.


Part A is compulsory which carries 25 marks. Answer all questions in Part A. Part B
consists of 5 Units. Answer any one full question from each unit. Each question
carries 10 marks and may have a, b, c as subquestions.

PART - A
(25 Marks)

1.a) Explain about theVirtual Machine. [2]


• What are the uses ofattributegrammar? [3]
• Explain about the problems inunconditionalbranching. [2]
• Explain about the enumerateddatatype. [3]
• What are the characteristicsofsubprograms? [2]
• Explainabout coroutines. [3]
• Why does Java not haveadestructors? [2]
• What are the applications oflogicprogramming? [3]

CSE, NRCM 27 G.sangeetha, Asst.Professor


PPL(CS3112PE)

• Describe the scoping ruleinML. [2]


• Explain about the fundamentalsofFPL. [3]

PART - B
(50 Marks)

2.a) Explain about the preconditions and postconditions of a given statement mean in
axiomaticsemantics.
b) Describe the steps involved in the languageevaluationcriteria. [5+5]
OR

3.a) Explain the different categories oflanguages.


b) Draw and explain the flow chart forcompilationprocess. [5+5]

4.a) Explain about the mixed-mode assignments that are used in Ada and JavaLanguages.
b) Explain about the type compatibility withanexample. [5+5]
OR

5.a) What is type checking? Differntiate between static and dynamic type checking and
give their relativeadvantages.
b) Define an array? Explain how to initialize an array? Explain the different types of
arrays.[5+5]

6.a) Describe about the static and dynamic scope of variables with anexample.
b) Define sub program. What are the distinct categoriesofsubprograms. [5+5]
OR
7.a) Explain about the generic subprograms in Ada with an
b) example. Explain about the semantic models of parameter [5+5]
passing.

8.a) Explain about the concurrency in Ada


b) 95. Explain the basic elements of prolog. [5+5]
OR

9.a) Explain how to handle the exceptions inAda.

CSE, NRCM 28 G.sangeetha, Asst.Professor


PPL(CS3112PE)

b) What are the design issues of abstractdatatypes. [5+5]

10.a) Explain about the internal representation of two LISPlists.


b) Describe the scoping rule in common LISPandHaskell. [5+5]
OR

11.a) Compare the functional programming languages with imperativelanguages.


b) Write a LISP function Fib(n) that computes nthFibonaccinumber. [5+5]

---ooOoo---

R20

Code No: CS3112PE


JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITYHYDERABAD

B. Tech III Year I Semester Examinations, November/December -


2018 PRINCIPLES OF PROGRAMMING LANGUAGES

(Computer Science and Engineering)

Time:3hours Max. Marks:75

Note: This question paper contains two parts A andB.


Part A is compulsory which carries 25 marks. Answer all questions in Part A. Part B
consists of 5 Units. Answer any one full question from each unit. Each question carries
10 marks and may have a, b, c as subquestions.

CSE, NRCM 29 G.sangeetha, Asst.Professor


PPL(CS3112PE)

PART - A
(25 Marks)

1.a) Defineaxiomaticsemantics. [2]


• Give an attribute grammar for simpleassignmentstatements. [3]
• What do you mean by precisionandrange? [2]
• What is aliasing? What are the problems associatedwithit? [3]
• Differentiate between actual andformalparameters. [2]
• What are the three general characteristicsofsubprograms? [3]
• Define abstractdatatype. [2]
• What is the purpose of aC++destructor? [3]
• How Haskell is differentfromML? [2]
• What is procedural abstraction?Giveexample. [3]

PART - B
(50 Marks)

2.a) Discuss various programming domains and their associatedlanguages.


b) Describe the basic concept ofdenotationalsemantics. [6+4]

OR

3.a) What are the potential benefits of studying programming languageconcepts?


b) Explain with examples how syntactic design choicesaffectreadability. [5+5]

4.a) What do you mean by binding? Give examples of some of the bindings and their
bindingtimes.
b) Evaluate the two approaches for supporting dynamic allocation and deallocation for
dynamiclengthstrings.
[6+4
]

CSE, NRCM 30 G.sangeetha, Asst.Professor


PPL(CS3112PE)

OR

5.a) Explain in detail various design issues of character stringtypes.


b) Whataredanglingpointersandlostheap-dynamicvariables?Howaretheycreated?
[4+6]

6.a) How co-routines are different from conventionalsubprograms?


b) Explain type checking technique inparameterpassing. [5+5]

OR

7.a) What is a subprogram? Discuss the design issues of subprograms.


b) Write a detailed note on localreferencingenvironments.[5+5]

8.a) What are the various methods of exception handling? Discuss.


b) How message passing is implemented in ADA?Giveexamples. [5+5]

OR

9.a) Explain how information hiding is provided in an ADApackage.


b) Discuss about the basic elements of Prologwith examples. [5+5]

10.a) Explain the important functions of LISP.


b) Discuss the key concepts ofscriptinglanguages. [5+5]

OR

11.a) What are the three features of Haskell that makes very different fromschema?
b) What are the data types supported inPython?Discuss. [5+5]

CSE, NRCM 31 G.sangeetha, Asst.Professor


PPL(CS3112PE)

Study Material.pdf

PPL PPT_1.pptx

Subject Notes.pdf

15. Advanced Topics beyond syllabus


• PYTHON
• PHP

16. Course Attainment value for Internal marks

III-CSE

Mid 1 Mid 2 Quiz 1 Quiz 2 Assign- Assign- Internal


1 2
CO 1 3 3 3 3
CO 2 3 3 3 3
CO 3 2 3 3 3 3 3 2.833333
CO 4 3 3 3 3
CO 5 3 0 3 2
Attainment 2.77

III-CSE

Mid 1 Mid 2 Quiz 1 Quiz 2 Assign- Assign- Internal


1 2
CO 1 3 1 3 2.333333
CO 2 3 0 3 2
CO 3 3 3 0 0 3 3 2

CSE, NRCM 32 G.sangeetha, Asst.Professor


PPL(CS3112PE)

CO 4 3 0 3 2
CO 5 3 3 3 3
Attainment 2.27

III CSE

Mid 1 Mid 2 Quiz 1 Quiz 2 Assign- Assign- Internal


1 2
CO 1 3 3 3 3
CO 2 3 3 3 3
CO 3 1 3 2 3 3 3 2.5
CO 4 3 3 3 3
CO 5 3 2 3 2.666667
Attainment 2.83

17.Course Attainment value for External marks

III CSE-C

Attainment
CO 1 3
CO 2 3
EXTERNAL CO 3 3
CO 4 3
CO 5 3

III CSE-B AND ALL EMERGING BRANCH

Attainment
CO 1 3
CO 2 3
EXTERNAL CO 3 3
CO 4 3
CO 5 3

III =I CSE-A

Attainment
CO 1 2
EXTERNAL
CO 2 2

CSE, NRCM 33 G.sangeetha, Asst.Professor


PPL(CS3112PE)

CO 3 2
CO 4 2
CO 5 2

18.Final course Attainment

Name of the subject: PPL Yr/Sem:-III/I


Batch: Academic Year: 2021-2022 Branch: CSE-A
Course Attainment
Final Direct Course Attainment Final Indirect
Mid Mid Quiz Quiz Assign- Assign- Internal University Course
1 2 1 2 1 2 Attainment
Calculation
CO 3 3 CO 1 2.89
1 3 3 3
CO 3 3 CO 2 2.84
2 3 3 3
CO 2.833333 3 CO 3 2.89
3 2 3 3 3 3 3
CO 3 3 CO 4 2.91
4 3 3 3
CO 2 3
5 3 0 3 CO 5 2.93
Attainment 2.77 3.00 Final
Weightage 25% 75% Indirect
2.89
Direct Total Attainment 0.69 2.25 Course
final direct course attainment 2.94 attainment
Weightage 80% 20%
Total Attainment 2.35 0.58
Course Attainment 2.93

Name of the subject: PPL Yr/Sem:-III/I


Batch: Academic Year: 2021-2022 Branch: CSE-B
Course Attainment
Final Direct Course Attainment Final Indirect
Mid Mid Quiz Quiz Assign- Assign- Internal University Course
1 2 1 2 1 2 Attainment
Calculation
CO 3 2 CO 1 2.79
1 3 3 3
CO 3 3 3 3 2 CO 2 2.8

CSE, NRCM 34 G.sangeetha, Asst.Professor


PPL(CS3112PE)

2
CO 3 2 CO 3 2.76
3 3 3 3 3 3 3
CO 3 2 CO 4 2.78
4 3 3 3
CO 3
5 3 3 3 2 CO 5 2.87
Attainment 3.00 2.00 Final
Weightage 25% 75% Indirect
2.80
Direct Total Attainment 0.75 1.5 Course
final direct course attainment 2.25 attainment
Weightage 80% 20%
Total Attainment 1.80 0.56
Course Attainment 2.36

Name of the subject: PPL Yr/Sem:-III/I


Batch: Academic Year: 2021-2022 Branch: CSE-C
Course Attainment
Final Direct Course Attainment Final Indirect
Mid Mid Quiz Quiz Assign- Assign- Internal University Course
1 2 1 2 1 2 Attainment
Calculation
CO 3 CO 1 2.68
1 3 3 3 2
CO 3 CO 2 2.68
2 3 3 3 2
CO 2.5 CO 3 2.57
3 1 3 2 3 3 3 2
CO 3 CO 4 2.89
4 3 3 3 2
CO 2.666667
5 3 2 3 2 CO 5 2.94
Attainment 2.83 2.00 Final
Weightage 25% 75% Indirect
Course 2.75
Direct Total Attainment 0.71 1.5
final direct course attainment 2.21 attainment
Weightage 80% 20%
Total Attainment 1.77 0.55
Course Attainment 2.32

CSE, NRCM 35 G.sangeetha, Asst.Professor


PPL(CS3112PE)

19.CO to PO Attainment
Course PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
Code

C415 2.36 1.52 1.18 1.86 1.69 1.69 1.01 0.84 o.67 0.51 0.17 1.118 0.84 1.01 0.17

20.Remarks and Recommendation

CSE, NRCM 36 G.sangeetha, Asst.Professor

You might also like