| 08:33 | <Luca Casonato> | Kris Kowal: I'd like to see a proposal / document that outlines the minimum shared Module interface between expressions, instance imports, and virtualisation. I think this is:
class Module {
get source(): %AbstractModuleSource%;
}
const mod: Module; // could come from expression, instance import, or constructor
await import(mod); // these modules are importable
new Worker(mod); // or usable as the entrypoint to a Worker
self.postMessage(mod); // and structuredClonable (transferrable) to other contexts
|
| 08:34 | <Luca Casonato> | In essence, all the Module semantics minus actually getting ahold of a Module object |
| 08:34 | <Luca Casonato> | From there, we can pursue all three ways of getting ahold of a Module in parallel:
- expressions
- instance imports
- constructor (this one also introduces
ModuleSource)
|
| 12:52 | <nicolo-ribaudo> | guybedford Luca Casonato fyi https://github.com/babel/babel/pull/15829 |