Pourquoi la classe de date de Ruby est-elle automatiquement chargée mais que DateTime ne l’est pas?

Avec IRB, pourquoi les classes Date et Heure sont-elles automatiquement chargées, mais pas avec DateTime? Je dois require 'date' , cela n’a pas de sens pour moi parce que je pensais que Date et DateTime utilisaient la bibliothèque standard 'date' ?

 ruby-1.9.2-p290 :001 > Date => Date ruby-1.9.2-p290 :002 > Time => Time ruby-1.9.2-p290 :003 > DateTime NameError: uninitialized constant Object::DateTime from (irb):3 from /Users/kamilski81/.rvm/rubies/ruby-1.9.2-p290/bin/irb:16:in `' ruby-1.9.2-p290 :004 > require 'date' => true ruby-1.9.2-p290 :005 > require 'date' => false ruby-1.9.2-p290 :006 > DateTime => DateTime 

Dans IRB, incluez cette ligne: require 'date' alors vous pourrez utiliser DateTime.

 irb(main):000:0> DateTime.class NameError: uninitialized constant DateTime from (irb):0 from /path/to/ruby/irb:12:in '(main)' irb(main):001:0> require 'date' => true irb(main):002:0> DateTime.class => Class 

Travaillé pour moi lors de la première initialisation avec require 'date' .

Étant un peu plus curieux, j’ai essayé:

 $ ruby -e 'puts DateTime.class' -e:1:in `
': uninitialized constant Object::DateTime (NameError) [~, kamilski81@mac] $ ruby -e 'puts Date.class' -e:1:in `
': uninitialized constant Object::Date (NameError) $ ruby -e 'puts Time.class' Class

Cela me fait penser que c’est un problème d’irb qui charge automatiquement la «date».