There's an obvious way out of all this. We add *two* new operators: d1 >> d2 # left operand wins d1 << d2 # right operand wins And if we really want to do it properly: d1 ^ d2 # raise exception on duplicate keys -- Greg