Walter Bright Wrote: > Eldar Insafutdinov wrote: > > Now we have to make a manual init function called from class > > constructors. I understand that allowing static consructors with > > cyclic imports will make order of their execution undefined, but this > > is acceptable and actually semantically doesn't break the idea of > > cyclic imports. Otherwise in my opinion this behavior is > > inconsistent.. > > One of the goals of D is to eliminate undefined behavior wherever > possible. In C++, the undefined order of static construction was a > source of many porting problems. I think it's better in the long run to > have a defined order, even if it means having to reorganize the code a bit.
in our case resources we are initializing are unrelated to the modules we are importing. and semantically the code is placed in modules as it should be.