Errata

WebAssembly: The Definitive Guide

Errata for WebAssembly: The Definitive Guide

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted by Date submitted
ch07.html#idm45510249885552
5th paragraph and example 7-3

According to the W3C spec published 5 December 2019, https://www.w3.org/TR/2019/REC-wasm-core-1-20191205/#syntax-elemtype, "anyfunc" has been replaced by "funcref" as the only permitted type for tables.

Although compilers generally seem to recognize the deprecated anyfunc keyword, most tools for inspecting WebAssembly binaries will display the type as "funcref" (as displayed by the wasm-objdump output following example 7-3) potentially creating some confusion for the reader.

John Simpson  May 18, 2022 
PDF Page Page 19
Example 2-2

the get_local declarations produce an error. I used local.get as per the default example and all worked well.

I'm sure this is just a change in the environment as Mr. Sleeten predicted would happen some.

Also I am having trouble installing and running cMake and WASM3 on my MacOS 12.5. I would love any help that could be provided

Thanks to all and have a great day!

Gene Buchite  Aug 04, 2022 
Mobi Page 124
Example 5-12

a minor detail concerning the sort function in book example 5-12: the used sorting algorithm actually seems to be bubbleSort (instead of mergeSort according to the function name)

The book is great so far! very instructive , everything works without problems on my ubuntu vm set up for the book.

Gerhard Zorn  Jan 01, 2022 
Mobi Page 152
Example 6-8

in the makefile from Example 6-8 when using the latest version 13.0.0 of clang/llvm the compiler parameter EXTRA_EXPORTED_RUNTIME_METHODS must be changed to EXPORTED_RUNTIME_METHODS as suggested by the message from the make command:
...
error: EXTRA_EXPORTED_RUNTIME_METHODS is deprecated, please use EXPORTED_RUNTIME_METHODS instead
..

Gerhard Zorn  Jan 06, 2022