Comments (2)
Great question!
There may be fundamental semantic reasons why we don't want to allow direct wasm-wasm cycles. @rossberg feels more strongly on the issue and can go into more details, but at the very least it would fundamentally change some aspects of core wasm semantics.
This is limitation could perhaps be relaxed in the future with sufficient use cases / motivation, but, until then, if the native ESM-integration spec disallowed cycles involving wasm, then bundlers that implemented the spec wouldn't have to worry about wasm-wasm cycles and thus could always find a DAG ordering to wire up promises via instantiate
+ Promise-imports.
To be clear, only (transitive) wasm<-->wasm cycles would be disallowed, wasm modules could still participate cycles involving ESMs as long as a given wasm module's imports from other wasm modules was properly ordered according to the postorder instantiation traversal.
from esm-integration.
I don't think anything else needs to happen in this issue, but we can reopen if that is not the case.
from esm-integration.
Related Issues (20)
- Security concern when importing executable modules as non-executable data HOT 16
- Should WebAssembly be at the same "privilege level" as JS? HOT 8
- Integration with import assertions HOT 4
- Proposal: Higher Order ESM Integration HOT 19
- Incorrect behavior of function importing?
- What will it take for `<script type="module" src="foo.wasm">` to be useful? HOT 7
- Possible inconsistency in js<->wasm cycle example for value import
- CSP Support for ESM Integration HOT 2
- Extending Wasm JS API with module namespace reflection HOT 2
- Examples: why an error in the wasm<->JS cycle case for value exports? HOT 1
- Multiple imports of the same wasm file: same instance or different instances? HOT 7
- Tracking phase progress HOT 3
- Tracking progress of .wasm fetch HOT 1
- Should ESM integration provide Modules rather than Instances? HOT 10
- What happens when an async function is imported?
- function's result type without `return` HOT 1
- Does this proposal support `*` and `as` in wasm imports? HOT 5
- It seems the proposal may help to run browser extensions w/o CSP wasm-unsafe-eval, WDYT? HOT 3
- Relationship to the component model? HOT 5
- Proposal overview should include examples of `import source` HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esm-integration.