PLP 3e Errata
(To report a bug, send mail to
.)
Main book
-
Page 3, line 1: delete "9".
-
Page 13: join last two lines of Figure 1.2.
-
Page 27, 4th-to-last line of main text: replace "shows shows" with
just "shows".
-
Page 52, Example 2.9, first line of comment production:
replace "
*/" with "**/" (insert Kleene
star).
-
Page 58, Figure 2.9: remove NFA state 11 from DFA state G.
-
Page 65, Figure 2.12, line for state 15: move "15" from "."
column to "digit" column.
-
Page 94, Figure 2.25, basis of State 6: replace
"stmt
expr
add_op term"
with
"expr
expr
add_op term".
-
Page 151: Move Check Your Understanding question 36 to the list
on page 161.
-
Page 178, 5th line of Assertions section: replace "to
to" with "to".
-
Page 200, Figure 4.14,
":="
production, 3rd semantic rule:
append "+
expr.errors" to each of lines 5 and 7.
-
Page 210, Question 4.33, 8th line: replace "support" with "suppose".
-
Page 247, Example 6.42: replace "
gen_new_name" with
"label_name".
-
Page 301, 5th-to-last line: replace "both require" with "Pascal
requires".
-
Page 316, first line: replace "
"abc"" with
"'abc'".
-
Page 320, last line of code in Example 7.41: replace "
S1"
with "s1".
-
Page 331, second line of second paragraph in Dope Vectors subsection:
replace "is always be" with "will always be".
-
Page 359, 6th-to-last line: replace "360" with "364".
-
Page 367, first line of displayed code: replace "
'mod'"
with "`mod`".
-
Page 393, CYU question 2, replace "RICS" with "RISC".
-
Page 434, 3rd-to-last line: replace "to reflected" with "to be
reflected".
-
Page 436, Section 8.7.2, 8th line: replace "hander" with "handler".
-
Page 458, 2nd-to-last line (in last block of displayed code): replace
"
{" with "{ }".
-
Page 550, 5th block of displayed code: replace "
x" with
"a" (three times).
-
Page 602, 6th line of Example 12.23: replace "the thread is allowed"
with "the thread that is allowed".
-
Page 611, third line after the subsection heading: delete "are".
-
Page 620, 4th line of Figure 12.16: replace
"data"
with
"bdata".
-
Page 625, 2nd line of Figure 12.17: replace
"data"
with
"bdata".
-
Page 637, Check Your Understanding question 38: delete "those of".
-
Page 695, 4th and 3rd-to-last lines of sidebar: insert CD glyph before
"3.4.2". Also, insert a closing parenthesis after the second
occurrence of "3.4.2".
-
Page 741, 8th line of Figure 14.6 (continued): replace
"reg_name"
with
"reg_names".
-
Page 857, reference Int95a: replace "rm95" with "rat95" in URL.
CD
-
Page 16-CD, last two lines of Example 2.58: replace regular expression with
"(
a | b | c)* a
(a | b | c)* a
(a | b | c)* a
(a | b | c)*
|
(a | b | c)* b
(a | b | c)* b
(a | b | c)* b
(a | b | c)*
|
(a | b | c)* c
(a | b | c)* c
(a | b | c)* c
(a | b | c)*".
-
Page 119-CD, 7th line of sidebar: delete "retain".
-
Page 147-CD, first paragraph: replace "it constrains each variable
to a single variant at elaboration time" with "it constrains each
object to a single variant at creation time".
-
Page 149-CD, 1st line of Tombstones section: replace
"can" with "to".
-
Page 270-CD, Figure 12.22: bottom two arrows on left side of figure
(reply and its acknowledgment) should each be reversed (point the
opposite direction).
-
Page 273-CD, 4th line of first paragraph: replace "12.3.4" with
"12.4.2".
-
Page 334-CD, line 10: delete tilde over "c"; add space after
semicolon.
-
Page 357-CD, Figure 16.13:
in Block 1a, replace
"v22 := v22−4"
with
"v34 := v34−4";
in the right-hand column, replace
"*(v36+4) := v13"
with
"*(v26−4) := v13";
in Block 3, replace
"if v43 goto Block 4"
with
"if v43 goto Block 2".
-
Page 361-CD, footnote: replace both occurrences of
"B" with
"A".
Thanks to
Björn Brandenburg, Bob Cochran, Chen Ding, Michael Edgar, Michael Glass,
Sérgio Gomes, Chris Hart, Ahmed Khademzadeh, Eleazar Enrique Leal,
Annie Liu, Allan Gottlieb, Kelly Jones, Kyle Liddell, Mikhail Prokharau,
Harsh Raju, and Jingguo Yao for their help in catching these mistakes.
Back to the book home page