> Intuitively for me
> hash.keys {|k,v| v > 200 }

#keys should return the hash's keys, IMHO it shouldn't iterate over
these keys. If you want to reject certain keys, call reject on these
keys as returned. The phrase "reject certain keys" put into the right
order would be in ruby lingo: hash.keys.reject {|k| hash[k] > 200}

If you think these methods are valuable, Enumerable is an open module
and you can add new methods at any time.

Thomas.