Good News: Almost all druntime supported on arsd webassembly
Lingo Chen
lingo at ms1.hinet
Wed Nov 8 13:29:46 UTC 2023
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?
More information about the Digitalmars-d-announce
mailing list