code: func (c *Compiler) WithModuleLoader(f ModuleLoader) *Compiler {
  	c.moduleLoader = f
  	return c
  }
docs: // WithModuleLoader sets f as the ModuleLoader on the compiler.
  //
  // The compiler will invoke the ModuleLoader after resolving all references in
  // the current set of input modules. The ModuleLoader can return a new
  // collection of parsed modules that are to be included in the compilation
  // process. This process will repeat until the ModuleLoader returns an empty
  // collection or an error. If an error is returned, compilation will stop
  // immediately.