Skip to content

Garbage collection requirements for WebAssembly #37183

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
PallHaraldsson opened this issue Aug 24, 2020 · 3 comments
Closed

Garbage collection requirements for WebAssembly #37183

PallHaraldsson opened this issue Aug 24, 2020 · 3 comments

Comments

@PallHaraldsson
Copy link
Contributor

PallHaraldsson commented Aug 24, 2020

FYI: There's a requirements process going on:

https://github.com/WebAssembly/gc/pull/121/files

They want to support the most popular languages, e.g. Java, C# and Python (and interop with JavaScript, but not between arbitrary languages as a goal). I'm just thinking do we have any special requirements? Do we need to comment on the process? Julia might be one of a few language with true multi-dimensional arrays (at least of languages with tracing GC), so overlooked, and from their doc I have e.g. this is mind "Support for embedded arrays".

Python (by default, i.e. CPython), Swift, Matlab and PHP only support reference counting, so while Matlab is on their list, I'm not sure it means Julia will be well supported.

@PallHaraldsson
Copy link
Contributor Author

WebAssembly/gc#125

@JeffBezanson
Copy link
Member

C# has a sufficiently rich data model that if (as they say) they intend to support it as a front end, I suspect we will be OK. Beyond that, the possibility of WebAssembly providing a form of polymorphism is interesting yet disturbing; from WebAssembly/gc#116:

Developing decidable sufficiently expressive combinations of bounded parametric polymorphism and structural subtyping is, to the best of my knowledge, still a longstanding open research problem.

Amen to that!!

@PallHaraldsson
Copy link
Contributor Author

I actually see C# has true multi-dimensional arrays (not just jagged arrays, the syntax for those is different): https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/arrays/multidimensional-arrays

So I'm not really worried and this issue can be closed. I thougth none of the other languages had that, only jagged arays like Java (unless something changed here).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants