We originally had a `context.Context` for anything that might be traced, but it turned out to be only useful for lifecycle and host functions. For instruction-scoped aspects like memory updates, a context parameter is too fine-grained and also invisible in practice. For example, most users will use the compiler engine, and its memory, global or table access will never use go's context. Signed-off-by: Adrian Cole <adrian@tetrate.io>
wazero examples
The following example projects can help you practice WebAssembly with wazero:
- allocation - how to pass strings in and out of WebAssembly functions defined in Rust or TinyGo.
- assemblyscript - how to configure special imports needed by AssemblyScript when not using WASI.
- basic - how to use both WebAssembly and Go-defined functions.
- import-go - how to define, import and call a Go-defined function from a WebAssembly-defined function.
- multiple-results - how to return more than one result from WebAssembly or Go-defined functions.
- namespace - how WebAssembly modules can import their own host module, such as "env".
- wasi - how to use I/O in your WebAssembly modules using WASI (WebAssembly System Interface).
Please open an issue if you would like to see another example.