| Errata: |
| pg. 6 | (Section 1.3) The second sentence ("Because syntactic issues are so well-covered...") and the third sentence ("We will introduce a number of tools...") should be separated by a period instead of a comma. |
| pg. 47 | (Section 3.2.1, second bullet) It appears that there's an extra space between 'c' and 'f'. |
| pg. 56 | (Figure 3.5) the second line starts "=uals [...]", instead of "= [...]". |
| pg. 95 | (Section 3.8) There's an extra left quote mark after the last sentence before the exercises. |
| pg. 99 | (Exercise 3.43) The second paragraph refers to the state <execs . Q, Q_exec . S>, but should be <execs . Q, (Q_exec) . S> instead. |
| pg. 134 | (Section 4.3.3) On the third-to-last line of the paragraph under the bulleted list, "simplify" should be changed to "simplifies." |
| pg. 221 | (Section 6.2.3, second bullet) On the top line, "respecitively" should be "respectively". |
| pg. 355 | (Figure 8.2) The widest line of the figure is too wide, and there should be 3 parentheses after "old", not 4. |
| pg. 391 | (Figure 8.22) The close angle bracket after the empty store sequence in the first RHS is a subscript rather than being in a regular font. |
| pg. 395 | (Figure 8.23) There shouldn't be a space between "parameter-" and "passing" in the caption. |
| pg. 1089 | (Appendix A.4.2) The body of the third clause in the match expression should read "n1 x n1" (instead of "n1 x n"). |
| pg. 1093 | Appendix B lists an "Epression Language" for EL, instead of "Expression Language". |