From: Daniel Schierbeck Date: 2006-08-18T01:05:06+09:00 Subject: Re: [Facets] Multiple arguments for Hash#delete nobu@ruby-lang.org wrote: >> hsh = {:a => 1, :b => 2, :c => 3} >> hsh.delete :a, :b #=> [1, 2] >> hsh.delete :c #=> 3 > > The class of returned value varies according to the number of > arguments? Yes. I don't see that as a big problem though, especially if there's a second method that *always* returns an array: hsh.delete_at :a #=> [1] hsh.delete_at :b, :c #=> [2, 3] It may be too much magic for some, but I think it's a very cool feature that won't interfere with how #delete is being used at the moment. The main reason for it becoming a Facet is that Hash#[] and Hash#[]= also work with multiple arguments. Cheers, Daniel