I've implemented a compiler for a simple language that outputs Components. There's a lot left to do and room for additional contributors. If anyone is interested in contributing, feel free to message me here on Zulip.
https://github.com/esoterra/claw-lang
Can I ask, have you drawn / will you be drawing inspiration from Boats's idea of "a smaller Rust"? https://without.boats/blog/revisiting-a-smaller-rust/
I'll have to reread it to remember & rethink how related they are, but I definitely saw this a while back and liked the ideas so I'll give a solid maybe / maybe.
I think I may have only read the first of the two posts originally. Having reread them, I'll upgrade to a maybe / definitely. Lots of the ideas in the "revisiting" article are relevant to open design questions for Claw and align with its goals.
Looks neat! I like the idea of something specifically done for WASM, and there's lots of simplifications you can do by knowing "well look it's not a kernel" compared to full Rust. Even things like "well I guess we don't have to care about alignment because WASM will be fine with it" can clean up a bunch of stuff.
Well, alignment still matters if you want to supply alignment immediates for performance reasons and implement the canonical ABI which has alignment requirements. I agree with the general point though; there's lots we can do in the design/implementation since we know that we are targeting exactly and only Wasm components.
Last updated: Nov 22 2024 at 16:03 UTC