Tim Morgan wrote:
> I have a question about the footnote comment in the Pickaxe book, regarding
> require.
> Is there any thought given to the handling of $", to filter with
> File.extend_path and thus to avoid
> multiple loadings?
not in Ruby 1.8:

irb(main):001:0> require 'set'
=> true
irb(main):002:0> $"
=> [..., "set.rb"]
irb(main):003:0> File.exist?('/usr/local/lib/ruby/1.8/set.rb')
=> true
irb(main):004:0> require '/usr/local/lib/ruby/1.8/set.rb'
/usr/local/lib/ruby/1.8/set.rb:397: warning: already initialized
constant InspectKey
=> true
irb(main):007:0> require '/usr/local/lib/ruby/1.8/../1.8/set.rb'
/usr/local/lib/ruby/1.8/../1.8/set.rb:397: warning: already initialized
constant InspectKey
=> true
irb(main):005:0> $"
=> [..., "set.rb", "/usr/local/lib/ruby/1.8/set.rb"]
irb(main):006:0> RUBY_VERSION
=> "1.8.6"

According to eigenclass.org, Ruby 1.9 changes this and filters
everything through File.expand_path:

  http://eigenclass.org/hiki/Changes+in+Ruby+1.9#l25

[murphy]