Slide 96
Slide 96 text
frankenstein = Hash.new { |h, k| h[k] = [] }
frankenstein[:nope] << :x << :y << :z
frankenstein[:nope] #=> [:x, :y, :z]
frankenstein[:not_even] #=> []
frankenstein #=> {:nope=>[:x, :y, :z], :not_even=>[]}
frankenstein.default_proc = ->(h, k) do
h[k] = Hash.new &h.default_proc
end
frankenstein[:x][:y][:z] #=> {}
frankenstein
#=> {:nope=>[:x, :y, :z], :not_even=>[],
:x=>{:y=>{:z=>{}}}}