small medium large xlarge

The latest version of the book is B3.0, released 24 days ago. If you've bought a PDF of the book and would like to upgrade 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: B3.0 (31-May-17)
  • Fixed: 04-Jun-17, awaiting book release
#81596
PDF page: 13
In Game introduction (page 5) The grid is labeled with the letters A through J going down the left side of the board and the numbers 1 through 10 ac...more...
Lance Halvorsen says: Thanks!
  • Reported in: B3.0 (06-Jun-17)
  • Fixed: 18-Jun-17, awaiting book release
#81652
PDF page: 19

Missing closing square bracket on "@enforce_keys [:coordinates, :hit_coordinates"
for module IslandsEngine.Island--Rahul Garg

Lance Halvorsen says: Thanks!
  • Reported in: B3.0 (03-Jun-17)
  • Fixed: 04-Jun-17, awaiting book release
#81636
PDF page: 21
Paper page: 14
In the last paragraph. "We can define a struct with row and col keys. Since we’ve aliased the Coordinate module, we can now refer to coordinate str...more...
Lance Halvorsen says: Thanks!
  • Reported in: B3.0 (31-May-17)
  • Fixed: 04-Jun-17, awaiting book release
#81594
PDF page: 26
Paper page: 19

There is a missing ] on the end of the @enforce_keys line. It is in the code download but it is missing in the book.--Kim Shrier

Lance Halvorsen says: Thanks!
  • Reported in: B3.0 (31-May-17)
#81595
PDF page: 31
Paper page: 24
In the code for the add_coordinate function, I would rewrite the case expression as follows: case Coordinate.new(row + row_offset, col + col_offset...more...
  • Reported in: B3.0 (31-May-17)
  • Fixed: 04-Jun-17, awaiting book release
#81597
PDF page: 31
Paper page: 24
In the last paragraph, you should mention that you are redefining new/0 to new/2 and that you are not keeping the new/0 function around anymore.--Kim ...more...
Lance Halvorsen says: Thanks!
  • Reported in: B3.0 (01-Jun-17)
  • Fixed: 04-Jun-17, awaiting book release
#81598
PDF page: 34
Paper page: 27
Prior to introducing the code for the add/3 function, you might want to mention that the alias directive at the top of the source file should be chang...more...
Lance Halvorsen says: Thanks!
  • Reported in: B3.0 (01-Jun-17)
  • Fixed: 04-Jun-17, awaiting book release
#81604
PDF page: 39

"Perfect, that’ exactly what we expected." -> "Perfect, that’s exactly what we expected."--Alan Gardner

Lance Halvorsen says: Thanks!
  • Reported in: B3.0 (01-Jun-17)
#81599
PDF page: 40
Paper page: 33
You reference @island_types in the types/0 function but you don't mention defining @island_types in the preceding discussion. It does exist in the co...more...
  • Reported in: B3.0 (01-Jun-17)
  • Fixed: 04-Jun-17, awaiting book release
#81600
PDF page: 40
Paper page: 33
Not sure how complete you want the code in the book to be. When you introduce the position_island/3 function, it relies on an alias for IslandsEngine...more...
Lance Halvorsen says: Thanks!
  • Reported in: B3.0 (01-Jun-17)
  • Fixed: 04-Jun-17, awaiting book release
#81601
PDF page: 46
Paper page: 39
In the second paragraph after the first iex session, first sentence, the word "and" before the word "island" should be "an". It should say, "Now let’...more...
Lance Halvorsen says: Thanks!