loadLocation = async (
  readPowers,
  moduleLocation,
  options = {},
) => {
  const {
    dev,
    tags,
    strict,
    commonDependencies,
    policy,
    parserForLanguage,
    languages,
    languageForExtension,
    commonjsLanguageForExtension,
    moduleLanguageForExtension,
    workspaceLanguageForExtension,
    workspaceCommonjsLanguageForExtension,
    workspaceModuleLanguageForExtension,
    ...otherOptions
  } = assignParserForLanguage(options);
  // conditions are not present in SyncArchiveOptions
  const conditions =
    'conditions' in options ? options.conditions || tags : tags;
  const compartmentMap = await mapNodeModules(readPowers, moduleLocation, {
    dev,
    strict,
    conditions,
    commonDependencies,
    policy,
    languageForExtension,
    commonjsLanguageForExtension,
    moduleLanguageForExtension,
    workspaceLanguageForExtension,
    workspaceCommonjsLanguageForExtension,
    workspaceModuleLanguageForExtension,
    languages,
  });
  return loadFromMap(readPowers, compartmentMap, {
    parserForLanguage,
    ...otherOptions,
  });
}
@param {ReadFn|ReadPowers|ReadNowPowers} readPowers
@param {string} moduleLocation
@param {LoadLocationOptions} [options]
@returns {Promise<Application>}