The latest version of the book is B18.0, released 3 days 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.
- Reported in: B5.0 (07-Mar-18)
PDF page: 10
This is just a suggestion.
I suggest that you add the chapter number to the folder name of the code. Like this.
Why? Because, when you download the code for the book, you start looking at the code. Of cause. By adding the chapter number, it gets easier to look at the code in order of difficulty. I mean how advanced it is. This is useful because you are building a more and more advance app as you read through the chapters.
I did it myself and I believe it helped.
Then allow me to thank you for writing this book and making it available through this beta program. There are so few Elm resources currently available. I have read the elm-introduction, but was frustrated and missing something. You explain well the import of Html modules and you step wise approached makes it easier to understand. I even think I understand Html better because of this. Example, "class" is an Html Attribute.
I also appreciate that you early on in the examples introduces styling and CSS. This is in particular, something I have been missing in other Elm resources.
I look forward to receive the remaining content of the book. I can hardly wait. :-) Type as fast as you can.
- Reported in: B7.0 (28-Jul-18)
Paper page: 22
The code example on this page is displaying the comment marks at the end of the highlighted/numbered lines.--Steve Rowley
- Reported in: B12.0 (06-Dec-18)
PDF page: 34
I am not sure what happened, but when I compiled I still saw all three photos. I had to delete index.html and copy it again from code\static-app and redo the REPLACE ME. Worked fine after that.--Michael Bonar
- Reported in: B10.0 (13-Nov-18)
PDF page: 58
I find page 57 and 58 are two the most difficult pages to grasp until now.
I think it has something to do with "You can think of the 'String' value as the payload of this message".
Following that line, maybe you can add a drawing of a Msg 'object' or representation of it in memory with e.g. a box in a box: (outer box depicting Msg, inner box depicting payload, possibly yet another box in that one depicting String).
The type signature for "onInput" suggests (to me) that the string gets gobbled up by the constructor.
But later down the page you say that
"When a union type constructor receives its arguments, not only does it construct an instance of the union type, but it also holds on to its arguments." which seems mind-boggling to me ;-) The type signature does not show a String type on the right hand side of the arrow(s) at all!
Explain the 'Attribute' in the type signature for "onInput", or explicitly defer an explanation for that.
Because "it" can refer to two previous things in this sentence, change
"After Elm invokes our UpdateComment constructor function, it will have a message
value that it can then send to our update function." to
"After Elm invokes our UpdateComment constructor function, Elm will have a message
value that it can then send to our update function."
Please add some nice drawings of the whole process of wiring up the DOM event handler, using the constructor, and updating the newComment field by means of sending the message to the update function by the Elm runtime like you did on page 45.
BTW: Great writing style! The books introduces Elm much gentler than the official docs. Tubular job!