exigir vs carregar

requirenão encontraria arquivos sem .rbextensões.
loadé projetado para incluir scripts e arquivos de configuração sem .rbextensão.

Explicação de Matz:
“requer é carregar” bibliotecas “, onde carregar é carregar” scripts “. O destino do método de carregamento pode ser arquivos de configuração ou qualquer outra coisa do caminho especificado, mas pelo menos são todos scripts Ruby. por outro lado, o método require carrega bibliotecas Ruby ou bibliotecas implementadas em C de carregamento dinâmico residem no caminho de carregamento. Portanto, ele precisa da extensão do caminho do arquivo para distinguir que tipo de biblioteca ler. “