> I'll get a crash Crash as in fatal error dump crash? > is that because it -creates- the key-value pair when I look at it ? It's possible to define a hash that way: a = Hash.new {|h,k| h[k] = nil} a[:x] => nil a => {:x => nil} You could check with p entry.default_proc or p entry.has_key?(:foo) p entry[:foo] p entry.has_key?(:foo)