How to solve this basic ES6-module circular dependency problem?

Mikael Sand msand at
Sun May 28 13:04:25 UTC 2017

Constructor injection should work as expected in any environment 
compatible and compliant with the ES6 and module specs. Or any 
functional environment with a module system.

Imho, it is the simplest and easiest to understand solution as well, it 
only removes code and adds two parameters. Thus expressing exactly what 
part is dependent on A and B in a parameterized reusable way, without 
any static cyclic dependencies. And without any complexity in the module 
initialization / resolution / evaluation.

Just reading the code once allows me to think about the entire flow, 
without keeping more than three concept in mind at once. Essentially 
allowing me to predict the entire execution of the program, without even 
running it.

More information about the es-discuss mailing list