On Mar 27, 2008, at 6:23 PM, Daniel DeLorme wrote: > Then there's also some ambiguity in the naming of the methods. To > me, "include?" and "cover?" sound like they express continuous > behavior but "member?" does sound like it expresses discrete behavior. I think cover? and === are definite synonyms, and imply start <= value <[=] end I think include? is kinda on the fence, but leans towards member? And I think member implies a set, and hence should be the same as !!range.detect(value) > Since this is open to interpretation, I would suggest like David > that the behavior should remain backward compatible. Besides, it's > always possible to test for discrete membership by converting to enum. and it's always possible to test for continuous membership using one of the three other available methods... > Oh I just thought of an interesting case; given that 2.hash != > 2.0.hash then by using set semantics shouldn't (1..3).include?(2.0) > return false? Yes, I believe it should. I don't believe it because of the hash, but because set membership is based on eql? Dave