为什么只加载了 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 的评论说它是一个标准库而不是核心库,但核心甚至没有定义 Date 类并使用 -f 启动 irc (抑制读取 .irbrc)以获得最小负载似乎仍然加载某种基础/核心日期类。
想要对正在发生的事情进行技术解释以及对解释这一点的 Ruby 文档的引用,以便在我从 Ruby 1.8.7 切换到 Ruby 2.0.0 时了解其他此类遭遇。