www.vustudents.ning.com

# CS606 Assignment No 04 Solution & Discussion Due Date:05-02-2013

Question No 1: Marks 20
Consider the following grammar productions. Suppose you have an attribute E.type which can
be set to either INT, BOOL. Assume that the type of an expression is set to INT if an error is
detected and you have a routine msg() similar to printf() that can be used to print error
message.
E → CONST {E.type=??}
| ID {E.type =getType(ID.name);}
| E1 +E2 {E.type=??}
| E1< E2 {E.type=??}
| E1= =E2 {E.type=??}
| (E1) {E.type=??}
You are required to add rules to the attribute grammar to calculate E.type for each grammar
production.

Views: 2255

Attachments:

### Replies to This Discussion

ECONST {E.type=??} how can i slove

not a  | E1+E2 should also be BOOLEAN??its INT i think 95% true

E  →  CONST          { E.type=INT}

coz constant can't be boolean..??

ok i will check

ok..if you got idea then kindly remove confusion...

how we will write rule for" ID "..?

no,

E1+E2 is boolean .sir said in lecture..it work on binary operator.takes 2 operands and logically + is OR and * is AND.

so E1+E2 . is Boolean.

i am not getting a point .

after type checking, how we will implement Rules.

any one did it  ?

i am not sure but taking guideline frm handouts it will be like this..

for E------>(E1)

Now its implementation will be like

E1.true=E.true

E1.false=E.false

E1.(id.name)=E.(id.name)

good work salma iqbal.

one more confusion now.

what does this sentence mean.?

Assume that the type of an expression is set to INT if an error is
detected and you have a routine msg() similar to printf() that can be used to print error message.

+,<,== are all BOOLEAN..

and (E1)is only INT..

then how we will print error...while there is no error.

1

2

3

4

5

## Latest Activity

Ammara Sabir liked Zayyan Rajput's discussion Eid Mubarak to All of You
1 minute ago
Muhammad Bilal liked + IFRAH ANSAR's discussion !!! Shayari Aur Ghazal
3 minutes ago
13 minutes ago
33 minutes ago
+ !! Ή@ᵯᵯℹ Ⲥℋ!! +!! liked Zayyan Rajput's discussion Eid Mubarak to All of You
35 minutes ago
54 minutes ago
54 minutes ago
Zayyan Rajput posted discussions
54 minutes ago