First time here? Checkout the FAQ!
+3 votes

how many Synthesized attributes are present in the given Syntax directed Definition?


(Answer key says only 2 Synthesized attributes are present. How to find them? Any idea?)

asked in Compiler Design by Veteran (20.4k points)  
edited by | 319 views
@Kapil just make parse tree and check Suppose Take Ex:"(1+4)" .
@manojk sir, see the answer
then L and T will be synthesized , rt?

E also taking value from it's parent
Sorry I think each attribute is synthesized here .Since value are computed in children node.

Sir, plz check this .....

2 Answers

+3 votes

It has 4 synthesized attribute which are 

E has the synthesized attributed  E.val and T the synthesized attribute  T.val

and F has the synthesized attribute F.val and digit has the synthesized attribute digit . lexval which is applied by the lexical analyzer .

Also , only semantic rule with side effect is  print(E.val) .

Refer ===>

    answered by Veteran (42.3k points)  
    edited by

    yes sir

    i reconsidered your option of F.val=digit.val

    @Kapil what about L?
    @ srestha

    it is just a side effect,

    semantic rules which do printing have no effect on attributes


    For input "3*5+4n"

    $6$ should be right??
    0 votes
    I think it is 7.

    As Synthesized attribute is used by parent node which takes value from its child. In given semantic rules if you see everytime when right hand side of production is reduced to  nonterminal there is some semantic action which has ti performed at everynode. Each parent is using value from its child.

    Plz Correct me if i am wrong.
    answered by Active (2.5k points)  
    Top Users Feb 2017
    1. Arjun

      4898 Points

    2. Bikram

      4102 Points

    3. Habibkhan

      3748 Points

    4. Aboveallplayer

      2986 Points

    5. sriv_shubham

      2288 Points

    6. Smriti012

      2222 Points

    7. Arnabi

      1946 Points

    8. Debashish Deka

      1920 Points

    9. mcjoshi

      1614 Points

    10. sh!va

      1462 Points

    Monthly Topper: Rs. 500 gift card

    20,793 questions
    25,951 answers
    21,976 users