Maybe this book is perfect? Apparently not quite. We’ll continue to post errata as it arrives.
Chapter 1
- Page 17: should be
(joy.chess/lookup (joy.chess/initial-board) "a1")
Chapter 2
- Page 40: should be “
report-nsexists in thejoy.ch2namespace”
Chapter 3
- Page 51, Section 3.4: should be “from one to the other”
- Page 52: Regular expressions are covered in section 4.5, page 73
Chapter 4
- Page 71, Section 4.4: should be “when evaluated in the
(identical? xy)form”
Chapter 5
- Page 85, Listing 5.1: The last line of the listing should be:
(map #(vec(map + yx %))deltas))))
Chapter 7
- Page 153: note the errata from page 85 above
- Section 7.4: The A*
hfunction uses a very high weighted value to estimate path cost. As a result, the examples presented provide estimations that are too pessimistic.
Chapter 8
- Page 160: quoting was introduced in section 2.6, page 32
- Page 163: quoting was introduced in section 2.6, page 32
Chapter 9
- Page 192: should be
(TreeNode. 5 nil nil)(not(TreeNodePlus 5 nil nil))
Chapter 10
- Page 217: the word
genclassshould be removed from the"Eat Cheetos"example.
Resources
- Page 317: should be “Norvig, Peter 1998.”
Thanks to everyone who submitted these corrections.
On page 131 (section 7.1.3) the docstring for the functions keys-apply and manip-map is after the args vector. Is it intentional ?
It was not intentional, but thankfully it doesn’t break anything. :-)
Page 84, Table 5.1: The entry for “If the index is out of range” and “get” should be “Returns ‘not found’ or nil” instead of “Returns nil”.
On Page 182, Figure 9.4, the folder “impl” should be named “contracts”
Thanks!
On page 41, bottom: should be “(:refer joy.ch2 On page 42, top: should be “(:refer joy.ch2 …
On page 181, consider changing “…for Clojure namespaces and not part of…” to “…for Clojure namespaces and is not part of…”.
On page 178, I find figure 9.1 a bit confusing. I wonder if it originally mirrored a listing that was changed? Should joy.nc/authors be joy.ns/authors? I would like more context for the ‘Date prefix as well.
On page 150, the first sentence of the last para doesn’t seem to agree with the listing. It says: “From the y-x point [0 0] the cost of travelling 5 right and 5 down given an estimated cost step-cost-est is 9000.” Should it be “… step-cost-est of 900 is 7200″? Possibly I’ve just misunderstood what it’s trying to say though.
Any, great book, best programming book I’ve read in a long time!
Regards,
Adrian.
The last code block of page 41 also incorrectly refers to the namespace “joy.ch1″. The “:refer” call should be to “joy.ch2″.
In the last code block on page 41, “(:refer joy.ch1)” should be “(:refer joy.ch2)”
It’s output should be “The current namespace is joy.yet-another”, not “The current namespace is $”. This is consistent with the output found on page 39 (ie: “The current namespace is joy.ch2″).
Also, the next code block (the first on page 42) refers to joy.ch1. “:refer joy.ch1″ should be “:refer joy.ch2″.
There is an extra closing paren in the code block in the middle of page 47. “guys-whole-name 1)))” should be “guys-whole-name 1))”