ERRATA IN "ML for the Working Programmer", 2nd printing [see also ML-ERRATA3.txt] ** Chapter 2 ** 20, line 11 (Ray Toal): Change _ to - in the "identifier" :_|==>-># 20, line 14 (Ray Toal): Remove _ from the list of reserved symbolic names. The underscore is not one of the "symbols", or "special characters" from which symbolic identifiers can be composed (DEFINITION, sec. 2.4). 37, line -6 (Toby Nipkow): change (adding and removing a round bracket) $$\eqalign{zero(sqr(sqr(sqr2)))) & \red zero(sqr(sqr(2\times2))))\cr to $$\eqalign{zero(sqr(sqr(sqr(2)))) & \red zero(sqr(sqr(2\times2)))\cr ** Chapter 4 ** 123, line 7 (Reuben Thomas): [exercise 4.18] "nodes" to "node". 125, line -3: "balinorder" to "balpreorder" ** Chapter 5 ** 147, exercise 5.1: Change "\${cons} \${x} \${y}" to "\${cons} (\${x},\${y})" 156, exercise 5.11: change "sections and composition" to "$I$, sections and composition". 171, line 15 (Phil Brabbin): change "(randseq 1.0)" to "(randseq 1)" 176, line 17: "of a countable set" should be "of two countable sets" 185, line 1: "depthiterative" should be "depthiter" ** Chapter 6 ** 212. Guy Cousineau has found a simple proof by structural induction! 215, Exercise 6.23, line 2 (Tobias Nipkow): delete "d" before the equals sign ** Chapter 7 ** 239, line 4 (Ray Toal) Superfluous right square brackets. ** Chapter 9 ** 317 (Ray Toal) Insert two spaces before "end" 318, line 14 and 15 (Ray Toal). "if pred kx =" should be "if pred x =" 348, line -3 and 349, line 11 (Ray Toal): the "1" should be underlined. ** Chapter 10 ** 388, line 2 (Ray Toal): change "become" to "becomes" ** Syntax Charts ** 412 (Ray Toal) Syntax Chart entry for Structure, first line: ObjectDeclaration in slanted chars instead of italics; Syntax Chart entry for Signature, first line: Specification in slanted chars instead of italics.