WASI to Go: Write Once, Go Anywhere
summary
Tooling generates idiomatic Go bindings from WIT and compiles components that actually run: wit-bindgen-go emits Go APIs and a new package cm for component types, TinyGo (0.33+) compiles to WASI Preview 2 components, and components execute under Wasmtime in demos (hello world, an HTTP proxy, and a WebAssembly runtime running inside another runtime). Prototype wy-http maps net/http to wasi-http; goal is mainline support in go24 and go1.25 (Aug 2025).
AI-written summary · about
chapters (10)
- 0:00WASI and Go intro
- 2:11WebAssembly history
- 4:21WebAssembly outside browser
- 6:56Component model and WIT
- 8:03witbingen-go tool
- 11:59TinyGo and libc
- 13:48HTTP in Go prototype
- 16:38Live demos
- 26:53Go and WASI future
- 28:19Q&A
related talks
13mUnleashing the Power of WebAssembly System Interface (WASI) in Go
38mIn the beginning was about metal, now is about Web: exploring WebAssembly in cloud envir.
44mThe World of WASI
32mWASM on Edge Serverless; Make Your Life Easier with Go and TinyGo
37mGo, WebAssembly!
24mReaching the Unix Philosophy's Logical Extreme with Webassembly
34mWasm Components: The Interchangeable Parts of Software
48mWebAssembly Beyond the Browser
