Selamat Datang di Blog Saya. Blog ini dibuat untuk memenuhi tugas dari dosen saya tercinta Bapak Ir.Tri Djoko Wahjono , M.Sc . Kiranya Blog ini bisa menambah pengetahuan bagi kalian. Isi blog ini mengenai konsep bahasa pemrogramman. Dan blog ini di sponsori oleh Bina Nusantara Alam Sutera.
Posted by : Unknown Minggu, 02 November 2014




Name : Romy Hermawan
NIM    : 1801378902
Class : LD001
Lecturer: Ir. Tri Djoko Wahjono,M.Sc

REVIEW QUESTION


6. What is the l-values of a variables? What is the r-values?
Answer:


The l­-values of a variable is its address while he r-values of a variable is its value.

7. Define binding and binding time.
Answer:
Binding is an association between an attribute and an entity, such as between a variable and its type/ value, or between an operation and a symbol. Binding time is the time at which a binding takes place.

8. After language design and implementation [what are the four times bindings can take place in a program?]
Answer:
compile time: a variable in java bound to a particular data type
load time: a variable bound to a storage cell when a program is loaded into memory
link time: a call to a library subprogram is bound to the subprogram code
run time: certain variables declared in pascal and in c++ functions

9. Define static binding and dynamic binding.
Answer:
A static binding is if it first occurs before run time and remains unchanged throughout program execution. A dynamic binding is if it first occurs during execution or can change during execution of the program.

10. What are the advantages and disadvantages of implicit declarations?
Answer:
The advantage is write ability.

PROBLEM SET


6. Consider the following JavaScript skeletal program:
// The main program
var x;
function sub1() {
 var x;
 function sub2() {
 . . .
 }
}
function sub3() {
 . . . 
 Assume that the execution of this program is in the following unit order:
main calls sub1
sub1 calls sub2
sub2 calls sub3
a. Assuming static coping, in the following, which declaration of x is the correct one for a reference to x?
i. Sub1
ii. Sub2
iii. Sub3

 b. Repeat part , but assume dynamic scoping.
Answer:
a. Static :

    1. Sub1 : sub1
    2. Sub2 : sub1
    3. Sub3: main

b. Dynamic :

    1. Sub1 : sub1
    2. Sub2 : sub1
    3. Sub3: sub1

7. Assume the following JavaScript program was interpreted using 
static-scoping rules. What value of x is displayed in function sub1? 
Under dynamic-scoping rules, what value of x is displayed in function 
sub1?
var x;
function sub1() {
 document.write("x = " + x + "<br />");
}
function sub2() {
 var x;
 x = 10;
 sub1();
}
x = 5;
sub2();

Answer:
Static scope: x=5,  Dynamic scoping: x=10.


8.      Consider the following JavaScript:
         var x, y, z;
    function sub1() {
       var a, y, z;
       function sub2() {
         var a, b, z;
          ...
       }
       ...
    }
    function sub3() {
       var a, x, w;
       ...
    }
List all the variables, along with the program units where they are declared, that are visible in the bodies of sub1, sub2 and sub3, assuming static scoping is used.
Answer:
Sub1: a(sub1), y(sub1), z(sub1), x(main).
Sub2: a(sub2), b(sub2), z(sub2), y(sub1), x(main)
Sub3: a(sub3), x(sub3), w(sub3), y(main), z(main)
9. Consider the following Python program:
x = 1;
y = 3;
z = 5;
def sub1():
a = 7;
y = 9;
z = 11;
. . .
def sub2():
global x;
a = 13;
x = 15;
w = 17;
. . .
def sub3():
nonlocal a;
a = 19;
b = 21;
z = 23;
. . .
. . .
List all the variables, along with the program units where they are
declared, that are visible in the bodies of sub1, sub2, and sub3, assumingstatic scoping is used.
Answer:
point 1 :  x = 1(main), y = 9 (sub1), z = 11(sub1) ,a = 7(sub1);
point 2 :  x =15(sub2), w = 17(sub2), a = 13(sub2), y = 9(sub1);
point 3 :  x = 15(sub2), b = 21(sub3), a = 19(sub1), z = 23(sub3), w = 17(sub 2);
point 4 :  x = 15(sub2), b = 21(sub3), a = 19(sub1), z = 23(sub3), w = 17(sub 2);

10. Consider the following C program:

void fun(void) {
int a, b, c; /* definition 1 */
. . .
while (. . .) {
int b, c, d; /*definition 2 */
. . . 1
while (. . .) {
int c, d, e; /* definition 3 */
. . . 2
}
. . . 3
}
. . . 4
}
For each of the four marked points in this function, list each visible variable,
along with the number of the definition statement that defines it.
Answer:
Point 1: a:1, b:2, c:2, d:2
Point 2: a:1, b:2, c:3, d:3, e:3
Point 3: a:1, b:2, c:2, d:2

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Popular Post

Diberdayakan oleh Blogger.

- Copyright © Binusian IT 2018(Concept of Programming Language) -Metrominimalist- Powered by Blogger - Designed by Romy Hermawan -