https://clang.llvm.org/docs/StandardCPlusPlusModules.html#introduction
The -fmodule-file=<path/to/BMI> option causes the compiler to load the specified BMI directly. The -fmodule-file=<module-name>=<path/to/BMI> option causes the compiler to load the specified BMI for the module specified by <module-name> when necessary. The main difference is that -fmodule-file=<path/to/BMI> will load the BMI eagerly, whereas -fmodule-file=<module-name>=<path/to/BMI> will only load the BMI lazily, as will -fprebuilt-module-path. The -fmodule-file=<path/to/BMI> option for named modules is deprecated and will be removed in a future version of Clang.
what does lazily and eagerly loading mean in this context?