Почему только некоторые методы класса Date загружаются без явного:
require 'date'
строка?
Например:
irb(main):002:0> Date.today
NoMethodError: undefined method `today' for Date:Class
from (irb):2
from /Users/mwlang/.rvm/rubies/ruby-2.0.0-p0/bin/irb:16:in `<main>'
И затем...
irb(main):003:0> require 'date'
=> true
приводит к...
irb(main):004:0> Date.today
=> #<Date: 2013-04-12 ((2456395j,0s,0n),+0s,2299161j)>
Документация на http://ruby-doc.org/stdlib-2.0/libdoc/date/rdoc/Date.html, похоже, не дает явного объяснения этого поведения. Комментарии к #irc говорят, что это stdlib, а не основная библиотека, но у ядра нет даже определенного класса Date и запускает irc с -f (подавлять чтение .irbrc), чтобы получить минимальную нагрузку, по-прежнему появляется загрузка какой-то базы/ядра Класс даты.
Хотелось бы получить техническое объяснение того, что происходит, и ссылки на документы Ruby, которые объясняют это, поэтому я понимаю, что для других таких встреч я переключаюсь с Ruby 1.8.7 на Ruby 2.0.0.