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 2, Problem 18E

Explanation of Solution

a.

FIRST (Es):

  • In production rule, the FIRST set is applied to the right-hand side (RHS), and tells all the terminal symbols which can start sentences derived from that RHS.
  • The definition of FIRST set is FIRST (x) = {x}, here “x” is terminal symbol.
  • For any non-terminal “X” with production rules Xx1|x2|...|xn,FIRST(X)=FIRST(x1)FIRST(x2)...FIRST(xn)
  • The FIRST (Es) for the given LL (1) grammar is as follows:

    FIRST (Es) = {atom, (, ’, ε}.

    In the grammar, “atom”, “(“, “’”, “ε” is the first right-hand side. So it is considered as FIRST (Es).

FOLLOW (E) in the given grammar:

  • FOLLOW set is used when the current non-terminal can derive.
    • S is the start symbol, so one can use FOLLOW(S) to start the FOLLOW grammar

Explanation of Solution

b.

Parse tree:

A parse tree for the given string (cdr ’ (a b c) ) $$ is ...

Explanation of Solution

c.

Left-most derivation:

The left-most derivation of (cdr ’ (a b c)) $$ is as follows:

 E_ $$ ( E_ Es ) $$ ( cdr Es_ ) $$ ( cdr E_ Es ) $$

    ( cdr ' E_ Es ) $$( cdr ' (E_ Es) Es ) $$( cdr ' (Es_) Es )

Explanation of Solution

d.

Table-driven top-down parse of the string (cdr ’ (a b c)):

Parse stackInput streamComment
P(cdr ’ (a b c)) $$ 
E$$(cdr ’ (a b c)) $$Predict P → E $$
( E Es ) $$(cdr ’ (a b c)) $$Predict E → ( E Es )
E Es ) $$cdr ’ (a b c)) $$Match (
atom Es ) $$cdr ’ (a b c)) $$Predict E → atom
Es ) $$’ (a b c)) $$Match atom
E Es ) $$’ (a b c)) $$Predict Es →E Es
’ E Es ) $$’ (a b c)) $$Predict E → ’ E
E Es ) $$(a b c)) $$Match ’
( E Es ) Es ) $$(a b c)) $$

Explanation of Solution

e.

Decent tree for “’”:

  • The given string is (cdr ’ (a b c)), here “’” is matched in a recursive descent pa...

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