4 ms·
All WASM related stuff seems lacking of know-how of WebAssembly itself. I want the promise of "language-agnostic". For example, I have AST, I want to generate W
by Existenceblinks 4y ago
All WASM related stuff seems lacking of know-how of WebAssembly itself. I want the promise of "language-agnostic". For example, I have AST, I want to generate WebAssembly (either text or binary format, lets start with .wat), there's only a couple articles I found talks about how to map string to wasm's memory or table.
Current situation is it's not language-agnostic as movement, it's just c/rust mostly.
So wasm-4 seems to have more interesting examples than the other e.g. https://wasm4.org/docs/tutorials/snake/handling-user-input https://wasm4.org/docs/tutorials/snake/handling-user-input
- MobiusHorizons 4y agoAre you trying to say web assembly is not well documented, or are you commenting on the state of tooling? It seems to me that most compiled languages can target wasm these days (eg c, c++, zig, rust, go, .net) The specifications are open and detailed [1]. Specifications like that can be daunting to consume if you want a place to start from instead of a complete overview of the landscape, but there are tutorials in pure web assembly if you want to get started. [1]: https://webassembly.github.io/spec/core/text/instructions.html https://webassembly.github.io/spec/core/text/instructions.ht...
- Existenceblinks 4y agoNot tooling. I wrote 8086 assembly before so I remember the process of learning data segment / register / byte allocation / all kind of interrupt. I would choose a word "applied webassembly" (like applied physics) for knowledge that it's lacking. c, c++, zig, rust, go, .net you said fall into "already application" category to me. It's no point of webassembly like no point of assembly when we write those languages.
- titzer 4y agoThis is good feedback for the Wasm community. Right now I am teaching a VM course on the back-half of the Wasm equation: how to build an engine for Wasm. The course is about more than Wasm, of course, so there is a lot of content about JVMs and dynamic object models, but the projects are based around Wasm. In the future I envision university compiler courses getting divided into two halves, either as one course with two halves, or two full courses. The first course/half would be entirely frontend: parsing, semantic analysis, IR, translation, lowering--and the target would be WebAssembly. The second course/half would be all about compiling Wasm to machine code. If the second course wanted to go more in the VM/runtime direction, vs focusing on compilation, it could include the upcoming GC extension or a custom extension to have objects. I think Wasm is the future of code formats and languages, so I'd like to move the needle here for PL implementors.
- Existenceblinks 4y ago> I'd like to move the needle here for PL implementors You read my mind, yes. That's why I said I have AST. Is your course private? I'm interested.
- titzer 4y agohttp://www.cs.cmu.edu/~btitzer/cs17-670/fall2022/ http://www.cs.cmu.edu/~btitzer/cs17-670/fall2022/
- Existenceblinks 4y agoOk thank you. At least there is accessible assignment project 1-4ab and the https://craftinginterpreters.com/ https://craftinginterpreters.com/ good!