Programming Language Pragmatics, Fourth Edition
Programming Language Pragmatics, Fourth Edition
4th Edition
ISBN: 9780124104099
Author: Michael L. Scott
Publisher: Elsevier Science
Expert Solution & Answer
Book Icon
Chapter 4, Problem 9E

Explanation of Solution

Attribute Grammar:

  • Assuming that the each id has synthesized attribute name and that each E and op has an attribute value both of type string.
  • val attribute is the root of the parse tree to contain a translation of the expression.
  • The following grammar represents the conventional infix notation.

E1 E2 E3 op E1.val := cat('(',E2.val, op.val, E2.val,')') id E.val := id.nameop  + op.val := '+'op  op.val := ''op * op.val := '*'op / op.val := '/'

  • To reduce the parentheses, let us take that constants have precedence 3, products and quotients have precedence 2, and sums and differences have precedence 1.
  • To override left to right associativity, we need to parenthesize a right operand if its outermost operator has the same precedence as the current operator.
  • To default precedence, one need to parenthesize either a right or left operand if its outermost operator has precedence lower than that of the current operator.

    E1E2 E3 op E1.val := assemble(E2.val, E2.prec, E3.val, E3.prec, op

Blurred answer
Knowledge Booster
Background pattern image
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education