为什么只有一些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类,并且使用-f(抑制读取.irbrc)启动irc以获得最小负载仍然会出现加载某种基础/核心日期类。
想要对正在发生的事情进行技术性解释,并对Ruby文档的引用进行解释,以便我从Ruby 1.8.7切换到Ruby 2.0.0时遇到其他类似的问题。