- Basic compilation examples from wasm book
- Make sure they're compilable
- Parsing samples from wat-compiler
- Remove subscript, use own parsing loop
- Avoid duplicating function signatures
- Compilation samples from wat-compiler
- Examples tests - existing & wat-compiler ones (ideally find failing table)
- Normalize tree in parser, not in compiler - keep compiler small & fast
- Basic parsing instructions from mdn & examples
- Benchmark against wabt, wat-compiler
- Build script
- Test: assert function;
- make sure compiler doesn't modify tree
- Recognize all number formats
- Format function
- Refactor for flat instructions: consume into stack, rather than fixed signatures
- Multiple results: block, if, loop, func
- Multiple params
- SIMD
- nan:value
- constant expressions
-
bench wassemble- broken - Tests: https://github.com/EmNudge/watlings
- Floating hex
- Official test suite https://github.com/WebAssembly/testsuite
- Compiler: Externref types;
- Compiler: Named/multiple memory;
- Compiler: Named/multiple tables;
- Relax no-inline limitation? ~ many examples use loop ... end, br 0 and other simple inliners ~ from code point things coming in loop/block node are not arguments, they're immediates-ish, or "body"
- make repl support switch of compiler
- better errors: should be safe to type in anything
- numeric values in data https://github.com/WebAssembly/wat-numeric-values/blob/main/proposals/wat-numeric-values/Overview.md
- extended-const (polyfill?) https://github.com/WebAssembly/extended-const
- reorganize OP so to store number of immediates
- wat-based wat-compiler