forked from swiftlang/swift
-
Notifications
You must be signed in to change notification settings - Fork 29
Open
Description
Component Model would be one of the most significant ecosystem changes in WebAssembly: https://bytecodealliance.org/articles/webassembly-the-updated-roadmap-for-developers
Here is a list of topics to utilize Component Model in SwiftWasm:
- Support
-emit-librarywith Reactor model
Currently, we only support-emit-executable, so .wasm binary always havemaineven though it's compiled with-mexec-model=reactor. We should allow linking .wasm without main entrypoint as a self-contained component. (Note that it does not mean we should support dynamic linking) - We can adopt WASI Preview 2, based on Component Model, using adapters:
wasi_snapshot_preview1.wasm - Thanks to C interop, we can already export and import things using Component Model compatible tools using wit-bindgen's C code generator. If we can add Swift code generator to the wit-bindgen, it would be much easier to utilize the Component Model in Swift world.
Links
https://bytecodealliance.org/articles/component-model-tooling-compatibility
colbyn, LebJe, MaxDesiatov and ejohn-cricutSTREGA, LebJe, MaxDesiatov and filip-sakel
Metadata
Metadata
Assignees
Labels
No labels