On Wednesday, 8 November 2023 at 09:06:31 UTC, Sebastiaan Koppe
wrote:
On Monday, 6 November 2023 at 23:44:11 UTC, Lingo Chen wrote:
On Monday, 6 November 2023 at 11:05:45 UTC, Sebastiaan Koppe
wrote:
https://llvm.org/devmtg/2022-11/slides/TechTalk3-ClangClang-WebAssembly.pdf
llvm ir seems to have support for the reftype(gc). so it a
compiler problem?
Unsure how it's progressed since but as can be seen on the
last slide of that pdf, it's work in progress.
Kotlin abandoned llvm and implemented a new wasm backend. So
waiting for llvm probably is not a good idea?
Is taking D's frontend + binaryen's backend a feasible
solution? If wasmgc's architecture is a good fit for D. Can it
be done quickly?
I have only looked approx 5 minutes at it, so its really hard
to say. I expect it to be quite some effort.
There are some things we can do today that are smaller in scope
and will help any future effort, such as reviving my druntime
port. You are going to need that anyway, unless you go with the
custom druntime or betterC route.
Yes, would love you to revived the druntime port, but I think
implemented the new wasmgc backend is necessary too.
https://www.pdl.cmu.edu/SDI/2022/slides/Wasm-Basis-of-Next-Gen%20Runtime-Systems.pdf
after reading through the slide, I think wasmgc is the only way
forward for good Javascript interoperability, and that is
critical for my use case(handling 3d data, which needs to be gc).
As Rikki stated, it just swapping llvm ir for wasmgc ir. Could be
non-workable, but I think it worth a try.
No experience in writing compiler, but I can handle
assembly/forth syntax just fine. Is anyone interested?