Part III
Memory and Indirection
A WebAssembly function can keep values in locals and on the operand stack, but anything with an address lives in linear memory: one flat array of bytes per memory, bounds-checked on every access. This part covers the instructions that use it, how a compiler lays out a language's data and its stack inside it, and the two other kinds of state a module has: globals, and the tables that make indirect calls possible.