Adding Giles Bowkett’s ideas to ActiveSupport.
Here ya go:
http://dev.rubyonrails.org/ticket/10503
It’s pretty simple.
{:a => :b} + {:c => :d}
# => {:a => :b, :c => :d}
{:a => :b, :c => :d} - {:c => :d}
# => {:a => :b}
{:a => :b, :c => :d} - {:c => :x}
# => {:a => :b, :c => :d}
All credits to Giles Bowkett for coming up with this.