This repository is a clone of
WebAssembly/spec
. It is meant for
discussion, prototype specification, and implementation of a proposal to add
support for stack-switching.
There are currently two active stack-switching proposals: Typed Continuations
(aka WasmFX) and Bag of Stacks. Documentation about each proposal is available
in separate directories of the main
branch of this repository (as detailed
below).
In order to minimise future difficulties merging upstream, the two corresponding extensions to the reference interpreter will be maintained in separate branches (as detailed below).
-
See the explainer for a high-level summary of the proposal.
-
See the overview for a more formal description of the proposal.
-
See the examples for Wasm code for implementing various different features including lightweight threads, actors, and async/await.
-
An implementation is available as an extension to the reference interpreter. It is accesible from the
wasmfx
branch.
-
See the explainer for a high-level summary of the proposal.
-
An extension to the reference interpreter will be made available in the
bag-o-stacks
branch in due course.
Original README from upstream repository follows.
This repository holds a prototypical reference implementation for WebAssembly, which is currently serving as the official specification. Eventually, we expect to produce a specification either written in human-readable prose or in a formal specification language.
It also holds the WebAssembly testsuite, which tests numerous aspects of conformance to the spec.
View the work-in-progress spec at webassembly.github.io/spec.
At this time, the contents of this repository are under development and known to be "incomplet and inkorrect".
Participation is welcome. Discussions about new features, significant semantic changes, or any specification change likely to generate substantial discussion should take place in the WebAssembly design repository first, so that this spec repository can remain focused. And please follow the guidelines for contributing.
For citing WebAssembly in LaTeX, use this bibtex file.