small medium large xlarge

The latest version of the book is P2.0, released over 1 year 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: P2.0 (08-Aug-16)
#80592
PDF page: 6
Paper page: iv
Possible typo, but P2.0 eBook still claims to be "P1.0—March, 2016" version of book, so now I really don't know if it's any different than before. Als...more...
  • Reported in: P2.0 (08-Aug-16)
#80593
PDF page: 6
Paper page: iv

…and it seems that your Gerbils just found the issue and pushed the CORRECT version to my Dropbox folder! :-) Very fast!--Ian Woodbury

  • Reported in: P2.0 (23-Sep-17)
#82099
PDF page: 14
Back to the match operator. iex> list = [ 1, 2, 3 ] [1, 2, 3, 4] To make the match true, Elixir bound the variable list to the list [1, 2, 3]. I...more...
  • Reported in: P2.0 (23-Feb-17)
#81147
Paper page: 14
Middle of the page: Back to the match operator. iex> list = [ 1, 2, 3 ] [1, 2, 3, 4] The return is obviously not [1, 2, 3, 4] but [1, 2, 3]--F...more...
  • Reported in: P1.0 (18-Jul-16)
#80525
PDF page: 57
filing = prepare_filing(sales_tax(Orders.for_customers(DB.find_customers), 2013)) the year needs to be 2016 to be matching the rest of this example...more...
  • Reported in: P2.0 (21-Sep-16)
#80753
PDF page: 103
On page 103 at the end of the timer function, the 3rd function passed in the Stream.resource() call is fn _ -> end which produces a warning "an expres...more...
  • Reported in: P1.0 (05-Jul-16)
#80495
PDF page: 122
In the opening sentence of Chapter 11: String Literals the following is written: "Elixir has two kinds of string: single-quoted and double-quoted." Ho...more...
  • Reported in: P1.0 (05-Jul-16)
#80500
PDF page: 124

> Chapter 7 had an exercise ...

Chapter 10.

--Koichi Sasada

  • Reported in: B1.1 (22-Feb-16)
#79973
PDF page: 171
Paper page: 164
Logging the error on page 164 does not always work. I suppose there is a race condition between the System.halt that follows an error, and the logging...more...
  • Reported in: P1.0 (03-Sep-16)
#80691
Paper page: 183
On page 183 you wrote, "However, if you use Process.monitor ... there is a potential race condition -- if the other process dies before your monitor c...more...
  • Reported in: P2.0 (07-Aug-16)
#80588
PDF page: 229?
(I'm using an e-reader so the page number provided is not accurate, but the form submission forced me to pick something) In Chapter 13, section "Tr...more...
  • Reported in: P1.0 (05-Jul-16)
#80499
PDF page: 286
>There's a wrinkle here. If you pass `structs: true` to `IO.inspect` (or >`Kernel.inspect`), it never calls our `inspect` function. Instead, it >fo...more...
  • Reported in: P1.0 (18-Jul-16)
#80521
PDF page: 616
First code example at "More Complex Matches" iex> list = [ 1, 2, 3 ] [1,2,3,4] The correct is: iex> list = [ 1, 2, 3 ] [1,2,3]--Guilherme B...more...