Appendices
A. Deferred decisions / topics to revisit#
- An
unsafefacility for low-level FFI. - An explicit allocator API (arenas, buffers) for performance-critical code.
- Automatic string marshalling between WebAssembly and JavaScript.
- Continuation-passing coroutines.
- Native threads (
std/thread). - Networking.
- External packages.
- WebAssembly without WASI.
B. Glossary#
- UFCS: Uniform Function Call Syntax.
a.f(b)is the callf(a, b)(§6). - Comptime: compile-time execution, Vader code run during the build (§14).
- SAM: Single Abstract Method. A trait with exactly one required method, whose impl may be written as its body alone (
Foo implements Trait -> expr) instead of the fullname :: fn(...) { ... }declaration. - VM: the Vader virtual machine, which runs the bytecode for
vader runandvader test(§2). - Bootstrap: compiling the Vader compiler with itself (
docs/BOOTSTRAP.md).