Draft: effects based on Typed continuation proposal#52
Conversation
9648cfb to
8fefdf3
Compare
|
Exciting. Which engine do you have in mind for experimentation? CC @dhil. |
|
Nice! We should be able to run this with https://github.com/wasmfx/wasmfxtime using the options |
|
Does https://github.com/wasmfx/wasmfxtime have GC support now? |
The support is not complete yet. We are keeping in sync with upstream, where the GC support is being implemented. I think the structures are in place, so it should be possible to compile to it, but I don't think there is any actual runtime garbage collection yet. |
|
I did this a while ago when some basic support for typed continuations was added in binaryen, which allows to validate the Wasm code. My motivation was mostly to have a feel of what an implementation of Ocaml effect handlers would look like. I did not have any engine in mind for experimentation. One issue is that we rely quite a lot on JavaScript to implement some runtime features (like I/Os) at the moment. |
Presumably we can link in some WASI in place of the JS? |
|
@titzer suggested that we target https://github.com/titzer/wizard-engine. Wizard supports GC proposal, and the stack switching through typed continuations is in development: titzer/wizard-engine#175. There is still the challenge of reliance on JS for runtime system features. |
|
We can probably develop a minimal runtime which is just able to support some effect benchmarks. That should not be too much work. |
a74ffbb to
058036f
Compare
|
Things are now happening on the js_of_ocaml repo at ocsigen/js_of_ocaml#1832. |
No description provided.