-
-
Notifications
You must be signed in to change notification settings - Fork 5
goals
Wasp unifies data and code like lisp, adding nested maps (trees) and natural syntax.
Angle aims towards programming via voice while staying mathematically sound.
☑ be self-contained and dependency free ☑ compile simple programs to minimal wasm ☑ produce runtime-free wasm for simple programs ☑ small (<200kb) runtime for complex programs ✔️ batteries included
☑ easy import of other code and modules (builtin wit reader and wasm linker)
☑ small (<200kb) wasp compiler running in wasm, dependency free ( reintroduced linker adds 2MB std::… )
☐ universal serialization
☐ REPL console (todo: serialize state between re-compilations)
☐ use the wit component model as native first class citizen
☐ reuse ALL rust crates for native libraries, as default lookup path (needs semi-stable rust abi). ☐ minimal rust parser to read .rs files as headers (ignore all implementation). ☐ many todos ☐ many concepts specified here still need implementation ☐ be self-hosted later on (even though the wasp compiler runs in wasm, it's currently written in c(++)) ☐ is_declared DWARF sections (or file) for debugging ☐ adhere to wasm smart contract standards
𐄂 be a systems language 𐄂 be 100% safe (relying on wasm safety instead of letting developers jump through hoops like rust) 𐄂 produce optimal wasm (while wasp programs are small, they can still be optimized via wasm-opt and wasm-gc!) 𐄂 being self-hosted early on (even though the wasp compiler runs in wasm, it's currently written in c(++)) 𐄂 builtin stable c/cpp FFI outside of wit. stable c abi is … non-existent. Use rust / wit / custom ffi package.