Chapter 4: Understanding WebAssembly Binary Toolkit
The Rust compiler chain converts Rust code into WebAssembly binary. But the generated binaries are both size- and performance-optimized. It is difficult to understand, debug, and validate binary code (it is a bunch of hexadecimal numbers). Converting WebAssembly binary back into the original source code is very difficult. WebAssembly Binary Toolkit (WABT) helps to convert WebAssembly binary into a human-readable format, such as the WebAssembly text (WAST) format or C-native code.
Note
Native code here does not refer to the original source of truth; instead, it refers to C-native code that the machine interprets.
WebAssembly Binary Toolkit is abbreviated as WABT and pronounced as "wabbit." WABT provides a set of tools for converting, analyzing, and testing WebAssembly binaries.
In this chapter, we will explore WABT and how it helps to convert WebAssembly binary into various formats and why it is useful. We will...