岩月と申します。

Ruby 1.8.1にてSyck無しでYAMLを使おうとするとエラーが出ました。

再現方法としましては、まずはカレントディレクトリに以下の内容の
yaml/syck.rb を用意します。これはSyckの読み込みを回避するためのもの
です。

raise LoadError

その後、例えばirbで以下のようにします。

irb(main):001:0> $:.unshift(".")
=> [".", "/usr/local/lib/ruby/site_ruby/1.8",
"/usr/local/lib/ruby/site_ruby/1.8/i386-cygwin",
"/usr/local/lib/ruby/site_ruby", "/usr/local/lib/ruby/1.8",
"/usr/local/lib/ruby/1.8/i386-cygwin", "."]
irb(main):002:0> require 'yaml'
LoadError: No such file to load -- yaml/parser
        from /usr/local/lib/ruby/1.8/yaml.rb:17:in `require'
        from /usr/local/lib/ruby/1.8/yaml.rb:17
        from (irb):2:in `require'
        from (irb):2
irb(main):003:0> [RUBY_VERSION, RUBY_RELEASE_DATE, RUBY_PLATFORM]
=> ["1.8.1", "2004-02-06", "i386-cygwin"]

問題がファイルが足りないだけならまだ良いのですが、今後Pure Rubyなコード
が保守されるのか(する必要があるのか)ちょっと心配になりました。実際どうな
んでしょうか。

# こういう話はruby-talkへ投稿すべきでしょうか?

-- 
岩月博之 <don / na.rim.or.jp>