By Developers, For Developers
| PDF Pg | Paper Pg | Type | Description | Fixed on | Comments |
|---|---|---|---|---|---|
| 71 | TYPO | “the best part of working Factor was the simple joy” Perhaps that should be changed to: “the best part of working on Factor was the simple joy” or “the best part of working with Factor was the simple joy” | 2014-07-01 | r157882 | |
| 71 | TYPO | “and by collaborating with all of the extremely talented contributors” Perhaps the ‘by’ should be removed: “and collaborating with all of the extremely talented contributors” | 2014-07-01 | r157894 | |
| 51 | TYPO | In the line: IN: scratchpad “Hello, Factor!” the syntax highlighting appears to be incorrect for the ‘!"’ portion of the text. | 2014-07-01 | r157881 | |
| 54 | SUGGEST | In the following: The if word takes a value and two quotations and calls the first quotation if the value is anything else but f(false). In the latter case, the second quotation is called it seems the word ‘else’ may not be necessary. So it would read: The if word takes a value and two quotations and calls the first quotation if the value is anything but f(false). In the latter case, the second quotation is called Another take on this would be: The if word takes a value and two quotations. If the value is anything but f(false) the first quotation is called. Otherwise the second quotation is called. | 2014-07-01 | r157895 | |
| 81 | SUGGEST | Here’s a version of ‘fizzbuzz’ from Rosetta Code: USING: math kernel io math.ranges ; These words accept at most one item from the stack. I think this version is a little cleaner, but this is definitely a judgment thing. : | 2014-07-01 | Thank you for the nice find. However, the example in the book works to tell a story about a functional pipeline so I prefer to keep it as it is. | |
| 4 | TYPO | “Like many of its fellow scripting language” -> languages | 2014-07-01 | r157896 | |
| 6 | TYPO | “You can compare any values for equality inequality with == and ~=, respectively.” -> equality and inequality (I guess) | 2014-07-01 | r157898 | |
| 9 | TYPO | “You can also explicitly create variadic functions, that is, functions with an arbitrary number of outputs.” I think that should be “inputs”. | 2014-07-01 | r157900 | |
| 18 | TYPO | “This new function just stores each key/value pair in a list, then concatenates them into string at the end.” -> a string | 2014-07-01 | r157897 | |
| 19 | SUGGEST | Functions `strict_read` and `strict_write` don’t work as intended if `false` is allowed as a table value. In that case, we need `if _private[key] ~= nil then …`. | 2014-09-13 | ||
| 27 | SUGGEST | The assignment for day one Lua says to write a program to print the first n even prime numbers. This is a bad assignment because there is only one even prime number, 2. Should be changed to just the first n prime numbers. | 2014-07-01 | r157899 | |
| 12 | xi | TYPO | …until you’re read this section -> “…until you’ve read this section” perhaps? | 2014-07-05 | r157983 |
| 77 | TYPO | USING io math.functions ; should be USING: io math.functions ; | 2014-07-07 | r158009 | |
| 86 | TYPO | Explanation of cart-item code says “On the second line, we have the same code but we then call >>price on the instance.” — it should say “price>>” for the second line as it is extracting price and putting it on the stack. | 2014-07-07 | r158019 | |
| 13 | ERROR | You ask to “create a program that will print the first n even prime numbers”. There is only one even prime number. | 2014-07-11 | Duplicate of erratum #76938, already fixed. | |
| 19 | ERROR | metatables, reading and writing: When putting the code in the order given in the book nothing happens (no error message as strict_read and strict_write are nil). That got me quite confused, please put the definition of mt after the definitions of strict_* | 2014-09-13 | ||
| 33 | SUGGEST | Setup Day3 for linux para 2 reads sudo apt-get install build-essential lua5.1 lua5.1-dev cmake rtmidi should that not be? lua5.2 and lua5.2-dev? | 2014-09-13 | ||
| 103 | SUGGEST | When you introduce the `if` you should explain the different between if .. then .. else and if | .. -> | .. -> | otherwise .. | 2014-08-15 | ||
| 212 | ERROR | This might be a nitpicky but the following sentence is not entirely correct: While Vect is indeed indexed by a value of type Nat, it is parameterised by a value of type Type. The difference is that parameters are uniform in the resulting (it is ‘a’ in both constructors, while Nat differs ‘Z’ and ‘S n’). Idris will automatically detect such property (unlike Agda, which has an explicit syntactic difference) and it is apparent in the induction principle and the associated eliminator (try elim_for Prelude.Vect.Vect) and you will see how things are quantified. | 2014-08-01 | Fixed: r158852 | |
| 134 | TYPO | The symbol :magnito in the Marvel Universe is incorrect! The correct spelling is Magneto, or in the sample code piece it would be :magneto. While I understand this may seem trivial, the fate of the Universe depends upon it’s Villains (oh wait, Hero, wait, he’s a bad guy again, uhmm, nevermind, whichever he is today) names being spelled correctly. | 2014-07-20 | r158459 | |
| 135 | ERROR | The print function at the bottom of page 135 no longer compiles of at least Elixir 0.12.4 (SyntaxError) iex:1: unexpected comma. Parentheses are required to solve ambiguity in nested calls. Syntax error before: ‘,’ | 2014-08-15 | ||
| 96 | SUGGEST | ELM point pattern matching does not work in repl xDist {x} = abs x can be compiled but does not work in the repl. | 2014-08-15 | ||
| 77 | TYPO | We now everything we need to calculate: “now” should be “know” | 2014-07-20 | r158458 | |
| 90 | TYPO | You will see that Elm takes full advantage of it’s heritage: “it’s” should be “its” | 2014-07-25 | r158634 | |
| 94 | TYPO | factoral 1 = 1 (and more occurrences in the rest of the code example) | 2014-07-25 | r158634 | |
| 90 | TYPO | The character \\ helps when you’re running in the repl . | 2014-07-25 | r158634 | |
| 99 | TYPO | What were you main influences? | 2014-07-25 | r158634 | |
| 105 | ERROR | String allows us to deal with graphics According to library.elm-lang.org/catalog/elm-lang-Elm/0.12.3/String, String is for string manipulation. | 2014-08-15 | ||
| 105 | TYPO | We’ll use Input records This API will allow us Missing period after “records” | 2014-07-25 | r158634 | |
| 107 | TYPO | which will come into handy when we work on our game | 2014-07-25 | r158634 | |
| 112 | SUGGEST | The game is called LanguageHeads, but the module is called LanguageHead. I’d just call it LanguageHeads (plural) as well. | 2014-08-15 | So close to production, I am going to leave this as is because it might introduce other errors. | |
| 124 | TYPO | The third day will a little shorter Missing “be” between “will” and “a” | 2014-07-26 | r158645 | |
| 126 | TYPO | Tuples are collections of fixed-size | 2014-07-26 | r159645 | |
| 150 | TYPO | We’ll start with the entire problem problem, | 2014-07-28 | r158697 | |
| 152 | TYPO | defmodule StateMachoneText do | 2014-07-28 | r158697 | |
| 155 | TYPO | the macro will do all of the work for us, creating everything everything | 2014-07-28 | r158697 | |
| 157 | TYPO | Most of Elixir semantics | 2014-07-28 | r158697 | |
| 157 | TYPO | languages like Lisp, Ruby and Clojure. | 2014-07-28 | r158697 | |
| 158 | TYPO | protocols, which adds dynamic polymorphism to the language | 2014-07-28 | r158697 | |
| 163 | TYPO | start_link will spawns and links the supervisor process | 2014-07-28 | r158697 | |
| 174 | TYPO | We also examined membero, a built in relation | 2014-07-29 | r158701 | |
| 174 | TYPO | Now’ll we’ll try to write some relations of our own. | 2014-07-29 | r158701 | |
| 174 | TYPO | [mano :alonso-church] | 2014-07-29 | r158701 | |
| 176 | TYPO | In the previous example, it may appears | 2014-07-29 | r158701 | |
| 91 | SUGGEST | In the Elm ChessPiece example: > data ChessPiece = CP Color Piece It is not explained what the meaning of “CP” is, and I could find no mention of it in the book or on the elm-lang.org site. The example also doesn’t work without it. What does it mean? | 2014-08-15 | ||
| 136 | SUGGEST | quicksort.exs drops duplicate elements. Maybe change the first list comprehension from `x < head` to `x <= head`. On a related note, it seems `lc` has been deprecated in favor of `for` in recent versions of Elixir. | 2014-08-15 | ||
| 149 | TYPO | “Think of unqoute” -> unquote | 2014-08-01 | r158837 | |
| 153 | TYPO | “See if you can identify each of the these steps” -> “each of these steps”? | 2014-08-01 | r158837 | |
| 220 | TYPO | The one downside of defne is that you must always match on all the functions arguments | 2014-08-01 | r158838 | |
| 221 | TYPO | even if some of it’s values are logic variables | 2014-08-01 | r158838 | |
| 221 | TYPO | Tests are run in order and whichever tests passes | 2014-08-01 | r158838 | |
| 224 | TYPO | For conde, we already say matche and defne | 2014-08-01 | r158838 | |
| 16 | TYPO | there’s a , at the end of the line height = cube_size, | 2014-09-13 | ||
| 225 | TYPO | We used featurec to contrains maps | 2014-08-02 | r158893 | |
| 226 | TYPO | There are an infinte number of answers “are” should be “is” in both cases | 2014-08-02 | r158893 | |
| 227 | TYPO | We can ask core.logic to solve for every triple of distinct numbers that whose sum is 100 | 2014-08-02 | r158893 | |
| 227 | TYPO | All the logic variables are constrained the finite range of 1 to 100. | 2014-08-02 | r158893 | |
| 227 | TYPO | such as [6 28 66] and 66 28 6. | 2014-08-02 | r158893 | |
| 231 | TYPO | We’ll use Clojure’s reduce function to affect the transformation | 2014-08-13 | r159275 | |
| 235 | TYPO | Asking for stories with more than 10 elements in whcih Yvette dies | 2014-08-02 | r158893 | |
| 237 | SUGGEST | “miniKanren is more than a library. It’s simultaneously a new language and a new programming paradigm.” Logic programming is a paradigm. miniKanren is certainly a fascinating implementation, but calling it a paradigm itself is a bit over the top. | 2014-08-13 | r159275 | |
| 167 | TYPO | Julia works in that the spirit | 2014-08-03 | r158934 | |
| 170 | TYPO | Dictionary literals use curly braces and=>, just like older version of Ruby. | 2014-08-03 | r158934 | |
| 172 | TYPO | Fetching keys and values from the dictionary is easy, as is testing for existence of a entry | 2014-08-05 | r159067 | |
| 172 | ERROR | the_keys = keys(numbers) ERROR: numbers not defined | 2014-08-13 | r159274 | |
| 175 | TYPO | A slice of single element still returns an array. | 2014-08-05 | r159067 | |
| 176 | SUGGEST | “Julia is designed as a language for scientific and other numerical programming.” This sounds like “scienctific” is more specific than “numerical”. I’d swap those two words. | 2014-08-13 | r159274 | |
| 177 | TYPO | Use a comma to give multiple indexes to an array. For consistency with the rest of the book, “indexes” should be “indices” | 2014-08-05 | r159067 | |
| 178 | TYPO | and we didn’t even cover much of its built in library functions | 2014-08-05 | r159067 | |
| 34 | SUGGEST | change #include “lua.h” ff to #include PATH_TO_INSTALLATION/lua.h. Otherwise the compiler will load files from the current directory. There are versions (and versions and versions…) available on the internet, all of which give incomprehensible errors. There goes another day. | 2014-09-13 | ||
| 35 | TYPO | Same problem with include. RtMidi.h is, usually, not in the same directory, so use PATH_TO_INSTALLATION/RtMidi.h (often /usr/local/include/RtMidi.h) | 2014-09-13 | ||
| 35 | SUGGEST | tonumberx and a host of other functions are only available in the 5.2 edition of the lua library. Don’t install 5.1 | 2014-09-13 | ||
| 34 | SUGGEST | Somewhere in your CMakelist.txt the use of the library RtMidi is missing, which gives rise to all kinds of incomprehensible errors. I’ve tried adding it to the CXXFLAGS, but that didn’t work. Editing link.txt so that -lrtmidi is added to the link command works, but it seems ugly. | 2014-09-14 | ||
| 33 | SUGGEST | ZynAddSubFX uses old style OSS audio, which is not supported in many Linux systems. It is possible to get audio from ZynAddSubFX using padsp (please add the footnote; I spent hours looking for it). In general, Day 3 of the LUA chapter invites a host of hardware and software problems having nothing to do with LUA. I’d suggest scrapping it. | 2014-09-14 | ||
| 182 | SUGGEST | “Accessing fields on a value of a type is done with the . operator, just like other dynamic languages.” | 2014-08-13 | r159274 | |
| 183 | TYPO | This is a perhaps unexpected, but probably helps simplify type inference. | 2014-08-07 | r159118 | |
| 186 | TYPO | concurrency and distributed computing is a necessity | 2014-08-07 | r159118 | |
| 187 | TYPO | We can still run code even if the worker’s are busy crunching numbers. | 2014-08-07 | r159118 | |
| 189 | TYPO | Along the way we’ll point out of a few more of Julia’s many charms. | 2014-08-07 | r159118 | |
| 190 | TYPO | Now that you’ve seen some of Julia’s main features and put the language through it’s paces | 2014-08-07 | r159118 | |
| 192 | TYPO | which is more powerful version of overloading | 2014-08-07 | r159118 | |
| 183 | TYPO | “Like any dyanmic language” -> dynamic | 2014-08-07 | r159118 | |
| 187 | TYPO | “julia> julia> function flip_coins(times)” -> one prompt too much | 2014-08-07 | r159118 | |
| 194 | TYPO | “The extra parantheses” -> parentheses | 2014-08-07 | r159118 | |
| 197 | TYPO | “To be more concrete, image a picture” -> imagine? | 2014-08-13 | r159274 | |
| 202 | TYPO | “Then, we multiple it element-wise” -> multiply | 2014-08-07 | r159118 | |
| 202 | TYPO | “Since the mask keeps only 6 out of the 64 coefficients, this almost 90% less data.” Something’s missing… | 2014-08-07 | r159118 | |
| 202 | TYPO | “graying expects pixels values” -> pixel | 2014-08-07 | r159118 | |
| 203 | TYPO | “We used lots of new tools to acommplish the task” -> accomplish | 2014-08-07 | r159118 | |
| 203 | TYPO | “Try a large block size on a image” -> an image | 2014-08-07 | r159118 | |
| 204 | TYPO | “JPEG does prediction of the first cooefficient” -> coefficient | 2014-08-07 | r159118 | |
| 204 | TYPO | “is not a an amalgamation of parts” -> not an amalgamation | 2014-08-07 | r159118 | |
| 205 | TYPO | “As Julia is new, it’s package library is pretty small.” -> its package library | 2014-08-07 | r159118 | |
| 185 | SUGGEST | I’m not sure I understand function `concat` correctly, but doesn’t something like `zeros = int(ceil(log10(b+1)))` make more sense than `zeros = int(round(log10(a))–1)`? | 2014-08-13 | r159274 | |
| 192 | TYPO | Use pmap to take a array of trial counts and produce the number of heads | 2014-08-08 | r159164 | |
| 195 | TYPO | We now have all the pieces to write your own macros. | 2014-08-08 | r159164 | |
| 196 | TYPO | Macros excel at removing boiler plate code | 2014-08-08 | r159164 | |
| 197 | TYPO | This means that in the frequency domain, its easy to identify the important values. | 2014-08-08 | r159164 | |
| 242 | TYPO | Boolean, Integer, Float, String and Char are primitive types that do about what you’d expect them to. | 2014-08-08 | r159164 | |
| 244 | TYPO | Type the following into a file called data_types.idr in the console: | 2014-08-10 | r159216 | |
| 249 | TYPO | List, String and Integer are types that describe values [], “Hello”, and 6. | 2014-11-10 | ||
| 254 | TYPO | Maybe we’d get fancy and and create separate types for each of those. | 2014-08-10 | r159216 | |
| 256 | ERROR | Write a function to transpose the matrix so that element m, n in the | 2014-08-10 | r159216 | |
| 260 | TYPO | Lua is putting its mark on everyday programming as a language for embedded systems and scripting because the language is compact, pure, adaptable and clean. | 2014-08-10 | r159216 | |
| 262 | TYPO | “The ecosystem, though it is young, already has a rich and robust ecosystem” | 2014-09-14 | ||
| 265 | TYPO | Y2K, the date problem that came with the turn of the century | 2014-08-10 | r159216 | |
| 265 | TYPO | Most existing languages will be too slow, too buggy and too complicated. | 2014-08-10 | r159216 | |
| 265 | TYPO | In 2010, Seven Languages in Seven Weeks [Tat10] focused on new wave of functional languages. | 2014-08-10 | r159216 | |
| 265 | TYPO | The next gen- eration, languages like Elixir, Julia and Elm, is more practical, | 2014-08-10 | r159216 | |
| 266 | TYPO | For rapid adoption, languages depends on a large and active community | 2014-08-10 | r159216 | |
| 266 | TYPO | It’s just much easy to do business with a smaller ecosystem | 2014-08-10 | r159216 | |
| 252 | ERROR | The error presented for `add` is wrong. The one presented in the book is: where it should be: That is, the size of xs is n so m should not appear at all in the first part of the error message (since that is the size of ys which doesn’t appear anywhere in the second clause). | 2014-09-17 | ||
| 243 | ERROR | As the module name in the current context is “Functions” the answer to: | 2014-11-10 | ||
| 28 | ERROR | Below the function remove_first(array) dofile(“scheduler.lua”)" punch.lua is NOT a new file It was already created on Page 26. | 2014-09-13 | ||
| 200 | ERROR | In the Julia Chapter on macros: julia> @unless in(a, 1) begin The macro is wrong, it should start with: a contains 1 so it should not print the wrong message | 2014-11-10 | ||
| 124 | ERROR | The scene method does not compile, complaining that “id” cannot be found. The code works when changed to “identity” instead. | 2014-11-10 | ||
| 135 | ERROR | In the ELM chapter, the spawnHead function will not compile because div cannot be found. Not sure what the backticks (`div`) even do, as I couldn’t find them anywhere in the chapter. [1 of 1] Compiling LanguageHead ( languageHeads.elm ) Additionally, when div is removed, the next error message is “Could not find variable ‘Text.height’.”, adding an “import Text” to the top fixes that problem. The next error after that is “Could not find variable ‘.’.” which I could not figure out. I am using elm v0.13. Also, elm-server does not exist (mentioned on page 139), it is now elm-reactor. It seems ELM is currently a very fast moving language, while very interesting I had a significantly difficult time following this chapter due to these errors plus the author did not distinguish very well between which functions were builtin vs which functions we would write later. | 2014-11-10 | ||
| 205 | TYPO | Chapter 5, Julia - Multidimensional arrays. eye constructs the identity matrix. eye(N) makes an N×N matrix, creates an M×N matrix. The sentence should read (I believe): | 2015-07-28 | This apparently got fixed before the book was published. | |
| 29 | ERROR | scheduler.lua has a bug where actions scheduled for later prevent actions scheduled for earlier to be run. I believe this is because the `remove_first` function in the scheduler messes with the order of the `pending` table (it puts the last element in place of the first). I’ve modified punch.lua to make the bug apparent. It is available as a private gist here: As a fix, I think you could just remove the call to `sort_by_time` in the `schedule` function` I hope this is helpful. If you need any further clarification, my email is vise890@gmail.com. Otherwise, I am absolutely loving the book so far. Keep up the great work. Cheers | 2015-10-08 | ||
| 104 | ERROR | In the latest build of Elm 0.14 the term lift has been removed. It is now map. | 2015-09-01 | ||
| 126 | TYPO | The 3rd paragraph reads: […] The third day will a little shorter […] missing “be”: […] The third day will BE a little shorter […] | 2015-10-07 | ||
| 94 | ERROR | import List (..) | 2015-09-01 | ||
| 179 | TYPO | In (2) near the end of the page it says But the result in (3) Either (2) must be ‘the_keys = keys(explicit)’ (and ‘numbers’ is not needed) or (3) returns ‘:two, :one’ | 2015-10-08 | We'll fix this in the next edition if/when there is one. | |
| 93 | ERROR | keyword ‘data’ was changed to ‘type’ in newer elm versions | 2015-09-01 | ||
| 134 | ERROR | The third paragraph from the bottom begins “Elixir executed Rectangle.area/2, and then…”. I think the arity of the function should be 1, that is, Rectangle.area/1. | 2015-10-08 | ||
| 135 | ERROR | The key identifying the book title in the modified map in the middle of the page should be “title” not “book”. That is, the map should read {title: book.title,… not{book: book.title,… | 2015-10-08 | ||
| 176 | ERROR | The example of key handling in dictionary on that page defines: However, the following outputs of “collect(…)” and “a: in the_keys” | 2015-10-08 | We'll fix this in the next edition if/when there is one. | |
| 103 | ERROR | Not only is “lift” no longer part of Elm, but “asText” results in “Cannot find variable `asText`” — this makes the whole chapter really difficult to follow through in the “try elm” system. | 2015-09-01 | ||
| 129 | TYPO | The text has literal asterisks in “intelligent sugar” Surely those words should just be italicized. | 2015-10-07 | ||
| 96 | TYPO | Missing word: You can explore more of [the] List functions … | 2015-10-07 | ||
| 102 | SUGGEST | It would be helpful to explain the historical context and/or rationale for the function name “lift”. | 2015-09-01 | ||
| 112 | ERROR | Inconsistent word usage: This page says “… we can lift the gameState signal onto display.” Elsewhere (IIRC), the book speaks of lifting a function onto a signal. | 2015-09-01 | ||
| 116 | SUGGEST | It might be helpful to point out the nice way that “all” works with currying in allHeadsSafe. | 2015-10-07 | ||
| 117 | SUGGEST | The discussion of spawnHead is a bit skimpy for such a complex function. | 2015-10-07 | ||
| 122 | TYPO | The keming of “Text” is very poor in “More about dealing with Text on …” | 2015-10-07 | ||
| 125 | SUGGEST | Consider moving “Each new language …” to the start of the following paragraph. | 2015-10-07 | ||
| 127 | SUGGEST | The phrase “C-style sigils” doesn’t seem very helpful. Wikipedia’s “Sigil (computer programming)” page doesn’t talk about C and none of my C references mention sigils. Did you mean Perl- or Ruby-style? | 2015-10-08 | ||
| 132 | TYPO | “… ran the module, and …” should be “… ran the module and …” | 2015-10-07 | ||
| 133 | SUGGEST | The sentence “Just for fun, …, and {w,h}.” is a bit hard to parse. I’d reword it. | 2015-10-07 | ||
| 133 | SUGGEST | “… the first or second, it will …” would read better as | 2015-10-07 | ||
| 134 | TYPO | “… named functions and pipes, …” should be | 2015-10-07 | ||
| 135 | SUGGEST | I’d change “This kind of deconstruction …” to | 2015-10-07 | ||
| 136 | TYPO | In the second iex example, “in” is emboldened (and shouldn’t be). | 2015-10-08 | ||
| 136 | SUGGEST | I might add a few more examples, eg: “is_list ‘string’”, “is_list [1, 2]”, and is_list {1, 2}". | 2015-10-08 | ||
| 139 | SUGGEST | Why, exactly, is the Quicksort “ironically named”? Explain or remove. | 2015-10-07 | ||
| 142 | TYPO | "… were all [performed] in the console. | 2015-10-07 | ||
| 144 | TYPO | “… set of fields with the …” should be | 2015-10-07 | ||
| 144 | TYPO | “… to represent our video.” should be | 2015-10-08 | ||
| 146 | TYPO | “… a customer decides to rent, return, or lose …” - Few customers “decide to lose” a video. | 2015-10-07 | ||
| 147 | SUGGEST | I’d swap the order of the fire/2 and fire/3 definitions. | 2015-10-08 | ||
| 147 | ERROR | “Since functional languages are immutable, …” should be | 2015-10-08 | ||
| 147 | SUGGEST | I’d change “in the console use quote:” to | 2015-10-07 | ||
| 150 | SUGGEST | “That means … but that syntax is repetitive. Let’s fix that.” has too many | 2015-10-07 | ||
| 152 | ERROR | In the code block, shouldn’t &renting/1 be &returning/1 ? | 2015-10-08 | ||
| 153 | TYPO | “… confirms macros run …” should be | 2015-10-07 | ||
| 154 | TYPO | “… and try it out” should be “… and try it out.” | 2015-10-07 | ||
| 160 | TYPO | There is an extra “…> end” line in the first iex example. <bt: Actually, this is correct. One to close the function, and one to close the receive loop. > | 2015-10-08 | ||
| 161 | TYPO | “Elixir provides tasks, which starts another process and waits until …” | 2015-10-07 | ||
| 161 | SUGGEST | The sentence “Elixir also provides … applications.” is long and convoluted. I’d break it up. | 2015-10-07 | ||
| 161 | TYPO | “… our video store using …” should be | 2015-10-07 | ||
| 162 | TYPO | “… is a behavior with some …” should be | 2015-10-07 | ||
| 165 | TYPO | “The children defines …” should be | 2015-10-08 | ||
| 165 | TYPO | The word “in” (in the ERROR REPORT) is emboldened and should not be. | 2015-10-08 | ||
| 168 | TYPO | “… not as mature, as some of …” should be | 2015-10-07 | ||
| 186 | TYPO | The code “type M<: …” should be emboldened. | 2015-10-08 | We'll fix this in the next edition, if/when there is one. | |
| 103 | ERROR | For the benefit of later readers, what used to be `Text.asText` is now `Graphics.Element.show` and `lift` is now `Signal.map`, so a working example is import Mouse main = Signal.map Graphics.Element.show Mouse.position | 2015-09-01 | ||
| 103 | ERROR | `Signal.count` has been removed. Here’s how to implement it yourself: count : Signal a -> Signal Int You need to import foldp from Signal for that to work, here’s the complete example: import Mouse count : Signal a -> Signal Int main = map show (count Mouse.position) | 2015-09-01 | ||
| 203 | ERROR | Julia changed the semantics of idct to return floats between 0 and 1. The “./ 255.0” should be removed or the code will produce all black images. | 2015-10-08 | ||
| 95 | TYPO | I line 7 and 9 the ‘b’ is unexplained | 2015-09-01 | ||
| 98 | TYPO | line 3 from the bottom change “y : number” to “y : number’” | 2015-09-01 | ||
| 104 | ERROR | The text and example describing counting the left and right arrows from the previous version of the book is missing, so the paragraph starting “Now, we create one signal with foldp.” doesn’t make sense. | |||
| 37 | TYPO | Bottom paragraph of the page, there is a reference to `luaL_doFile()`. I think it should be `luaL_dofile()`. It is spelled correctly in the preceding code example. | |||
| 2% | TYPO | The Ghostbusters reference should exorcise poltergeists, not exercise them (that would defeat the purpose!). | |||
| 174 | ERROR | New versions of Julia have deprecated the ruby hash syntax. | |||
| 27 | ERROR | lua/day3/b/play.cpp(3) should be the current code reads … (argc < 1) which is not correct as the function later references argv[1] which would result in undefined behavior if argc is 1 | |||
| 135 | ERROR | Setting up the map pattern match example as written gives an error: iex(10)> book (MatchError) no match of right hand side value: %{author: %{first: “David”, last: “Thomas”}, title: “Programming Elixir”} iex(11)> Thank you. |