Semester : SEMESTER 7
Subject : Programming Paradigms
Year : 2018
Term : DECEMBER
Branch : COMPUTER SCIENCE AND ENGINEERING
Scheme : 2015 Full Time
Course Code : CS 403
Page:2
14
15
16
17
18
19
b)
a)
b)
a)
b)
R7931 Pages: 2
second(add)
first()
write integer(x)
(a) What does this program print if the language uses static scoping? Give
reasons
(b) What does it print if the language uses dynamic scoping and give reasons
What are the memory layouts used in arrays? How the address calculation is
done in three dimensional arrays?
PART C
Answer any two full questions, each carries 9 marks.
Explain co-routine? Why cactus-stack is used in co-routine?
In what sense do generics(template) serve a broader purpose in C++?
Explain how to maintain the static link and dynamic link during a subroutine
call.
(let ((a 6)
(b 8)
(square (lambda (x) (* x x)))
(plus +))
(sqrt (plus (square a) (square b))))
Write the output of the above code? Explain how let and lambda construct works
Define lazy evaluation with an example.
How database manipulation is carried out in Prolog using assert and retract?
What are the unification rules used in Prolog?
PART D
Answer any two full questions, each carries 12 marks.
Explain the innovative features of scripting lan guages.
Summarize the visibility rules used in C++.
Compare and differentiate the data types of popular scripting languages to those
of compiled languages like .ل
What is a semaphore? What operations does it support? How binary and general
semaphore does differ?
Describe six different mechanisms(principles) commonly used to create new
threads of control in a concurrent program
What is a JIT compiler? What are its potential advantages over
interpretation/conventional compilation?
ಸೇ ೫ ೫ ೫
Page 2082
(5)
(6)
(3)
(4)
(5)
(3)
(3)
(3)
(9)
(3)
(6)
(6)
(9)
(3)