Yes. Let's rephrase that first sentence.
"Any module with a dependency on data that it needs to execute will have to wait for that data before it executes."
That's a good thing.
"Any module with a dependency on data that it needs to execute will have to wait for that data before it executes."
That's a good thing.
As far as I'm concerned, an explicit call to `ModuleB.loadData()` is far better than having it happen as part of module loading, without me necessarily being aware of it. Right now, module loading is assured to be synchronous, and losing that certainty seems like a bad idea to me.
Doesn't the same risk apply if one of the modules in the graph declaratively imports a module hosted on a slow external CDN?