







This post is an expanded version of a presentation I gave at the recent WebAssembly CG meeting in Munich. WebAssembly has come a long way since its first release in 2017. The 1.0 version of WebAssembly was already a great fit for low-level languages like C and C++, and immediately enabled many new kinds of applications to efficiently target the web.
WebAssembly and its platform targets
When talking about WebAssembly, one of the things that often confuses people is the lack of a great analogy for the various platform targets that WebAssembly supports. This ends up being a bit important as it dictates whether your WebAssembly code will (not) work with another bit as it all
A Tale of Three WebAssembly Runtimes
Walking through the implementation of three different WebAssembly runtimes from scratch

missing the point of webassembly — wingolog
wingolog: article: missing the point of webassembly
Instructions — WebAssembly 3.0 (2026-06-03)
WebAssembly computation is performed by executing individual instructions.
extism/extism
The framework for building with WebAssembly (wasm). Easily & securely load wasm modules, move data, call functions, and build extensible apps.
extism/extism
The framework for building with WebAssembly (wasm). Easily & securely load wasm modules, move data, call functions, and build extensible apps.
Rust - The WebAssembly Component Model
Rust has first-class support for WebAssembly core and WebAssembly components via the available targets in the toolchain:
A practical guide to WebAssembly memory | radu's blog
Memory in WebAssembly is one of the topics that creates confusion for newcomers, particularly for those with experience in languages with memory management features like garbage collection, such as JavaScript, Go, or Java. In this article we explore using memory in WebAssembly in various scenarios - passing JavaScript arrays to Rust and AssemblyScript modules, checking for some basic memory leaks using Valgrind, or exchanging strings between runtimes and modules using Wasmtime.
WebAssembly Core Specification
Please check the errata for any errors or issues reported since publication.
WebAssembly
WebAssembly (abbreviated Wasm) is a binary instruction format for a stack-based virtual machine. Wasm is designed as a portable compilation target for programming languages, enabling deployment on the web for client and server applications.
A Compiler Author’s Guide to WebAssembly GC by Oscar Spencer @ Wasm I/O 2025
On forking the Web
This document contains a set of informal notes on how to build an alternative specification to the Web, in such a way that hopefully prevents many of its drawbacks while still preserves many of the good points. This document is not an specification, and is therefore subject to change over time.
Port of Linux to WebAssembly - Joel Severin
The Open Web's second chance (w/ Dan Abramov) - Syntax #1025
Dan Abramov joins Scott and Wes to explain AT Protocol, the open standard quietly rebuilding the social web. They get into how it actually works, why it's way bigger than just Bluesky, and why Dan calls it one of the most interesting ideas on the internet right now.

Wasm 2.0 Completed - WebAssembly
WebAssembly (abbreviated Wasm) is a binary instruction format for a stack-based virtual machine. Wasm is designed as a portable compilation target for programming languages, enabling deployment on the web for client and server applications.