If you hadn’t noticed, I have started looking into WebAssembly and WASI. Last time I was looking into the LLVM toolchain. In the last few days, I have been reading about Envoy and its WASM filters. While there are a number of tutorials on how to use the Proxy WASM SDK using higher-level languages such as C++, Go, Rust, Zing and AssemblyScript, I could not find any resource on how to write a WASM extension from scratch using the canonical text format WAT and the lower-level tool wat2wasm.