small medium large xlarge

The latest version of the book is P1.0, released about 2 years ago. If you've bought a PDF of the book and would like to update it to this version (for free), visit your home page.

By default this page displays the errata for the latest version of the book. If you have a previous version, select it here:

If you've found a new error, please submit it.

  • Typo
  • Tech. error
  • Suggestion
  • Maybe next edition
  • Not a problem
  • Reported in: P1.0 (14-Jun-18)
#83262
PDF page: 26
The docstring for function 'greeting' says it returns 'Hello, username.' including full stop, so the body should really be `(str "Hello, " username "....more...
  • Reported in: P1.0 (16-May-18)
#83099
PDF page: 47
The function: (defn index-filter [pred coll] (when pred (for [[idx elt] (indexed coll) :when (pred elt)] idx))) Could just be: (de...more...
  • Reported in: P1.0 (21-Dec-19)
#86176
PDF page: 47
Paper page: 47
I believe the "error" claimed in errata #83099 is mistaken. The second version introduced by the submitter will handle a nil pred differently. The...more...
  • Reported in: P1.0 (16-May-18)
#83098
PDF page: 54
The results of the following two functions need to be swapped. (first {:fname "Aaron" :lname "Bedra}) -> ([:lname "Bedra"]) The result should be -...more...
  • Reported in: P1.0 (03-Dec-19)
#86106
PDF page: 59
"filter takes a predicate and a collection and returns a sequence of objects for which the *predicate* returns true." Possibly, changing "objects" ...more...
  • Reported in: P1.0 (10-Jan-20)
#86243
PDF page: 81
On top of the page below the title 'Everything Is a Sequence' is the text: You can get the first item in a sequence: - (first aseq) first returns...more...
  • Reported in: P1.0 (07-Aug-18)
#83473
PDF page: 97
Paper page: 83

Link to “Understanding Clojure’s PersistentVector Implementation” by Karl Krukow doesn't work.--Radek Kysely

  • Reported in: P1.0 (21-Dec-19)
#86177
PDF page: 97
Paper page: 83
The broken link mentioned in errata #83473 looks to be a typo in setting up the tinyurl. The tinyurl given in the PDF/book (...//tinyurl.com/cloju...more...
  • Reported in: P1.0 (01-Jun-19)
#85333
Paper page: 111

reduce would be used to compute a single value, while into could be used to create a collection for output, not opposite as written in the book

  • Reported in: P1.0 (04-Jan-20)
#86222
PDF page: 131
When trying to use the following line I encounter an error: `(s/def ::bowling/roll #{0 1 2 3 4 5 6 7 8 9 10})`. This issue seems to be a known one: cl...more...
  • Reported in: P1.0 (29-Dec-19)
#86194
PDF page: 132
Missing x in function definition what I can see: (defn big? [ ] (> x 100)) what think should be there: (defn big? [x] (> x 100)) --Nazarii Ba...more...
  • Reported in: P1.0 (09-Mar-18)
#82887
PDF page: 132

The function big is missing the argument: x

(defn big? [ ] (> x 100))--Jonathan

  • Reported in: P1.0 (12-Jan-20)
#86251
PDF page: 146

(defn big? [ ] (> x 100)) example misses x argument.--German Tebiev

  • Reported in: P1.0 (01-Jan-20)
#86207
PDF page: 171
The definterface example does not compile: CompilerException java.lang.IllegalArgumentException: Interface methods must not contain '-' --Nazarii Ba...more...
  • Reported in: B3.0 (01-Feb-18)
#82729
PDF page: 172
On your code starting below “Now let’s put it all together.” To keep your code consistent with your previous, hard-coded make-reader and make-write...more...
  • Reported in: P1.0 (03-Jan-20)
#86218
PDF page: 175
make-writer implementation for URL should wrap path into FileOutputStream instead of FileInputStream (-> dst .getPath FileOutputStream.)--Na...more...
  • Reported in: B3.0 (01-Feb-18)
#82728
PDF page: 182
In the def of jaws, the building of a sequence of notes in the text using the construct (Note. pitch 2 duration) fails with the error: "Error refresh...more...
  • Reported in: B4.0 (11-Feb-18)
#82764
PDF page: 215
These observations may be due to the way I am testing examples as they appear in the text. Maybe more explanation is required to introduce the concept...more...
  • Reported in: B4.0 (11-Feb-18)
#82765
PDF page: 215
On my previous submission for this page, about changing :balance to ::balance, I realize that the error is probably when you created test-savings and ...more...
  • Reported in: P1.0 (23-Feb-20)
#86371
PDF page: 242
tinyurl.com/checked-exceptions-mistake link leads to non-existing radio.weblogs.com/0122027/stories/2003/04/01/JavasCheckedExceptionsWereAMistake.html...more...
  • Reported in: P1.0 (05-Jan-20)
#86229
PDF page: 243

There is a missing space that breaks compilation. Printed (aset arr2 "fill") should be (aset arr 2 "fill")--Nazarii Bardiuk

  • Reported in: P1.0 (16-Oct-18)
#83780
Paper page: 251
Top of page 251 defines: (defn game [word player] ....) On later pages though the function is invoked as [player word], first on page 254: (g...more...