Hi --

On Tue, 29 Nov 2005, ara.t.howard / noaa.gov wrote:

> On Tue, 29 Nov 2005, Warren Brown wrote:
>
>> Matz,
>> 
>>>> What about Range#include??  Would it still be an
>>>> alias for Range#member?, or would it retain the
>>>> current interval check?
>>> 
>>> No decided yet.  Feel free to say your opinion.
>>
>>    Well, I tend to agree with your previous decision on this.  Having
>> Enumerable#include? be an alias for Enumerable#member? (or vice-versa),
>> but having Range#include? behave differently from Range#member? would be
>> confusing.  I think it would be better to leave these two methods as
>> aliases and add a new method to Range for the interval check.  My
>> leading candidate for this method is now David A. Black's suggestion of
>> #encompass?.  This is a great name and I really like his idea of
>> extending it to accept Ranges as parameters so that
>> (1..10).encompass?(2..9) == true.  Other synonyms could also work:
>> #enclose?, #surround?, and even #contain?.
>
> reading this just gave me a new idea:  first of all, i think this method
> should be a verb so that it implies a loop and test, rather than a simply
> test.  this is important because the method is, potentally, extremely
> expensive.

"encompass" is a verb :-)


> shortening you suggesting then, how about
>
>  (0 ... 42).pass? 42  #=> false
>  (0 .. 42).pass? 42  #=> false

I don't get how "pass" relates to ranges, or enumerables generally.
Do you mean because it will be "passed" to the block?  That seems like
focusing on the mechanics rather than the semantics of the object.
(But maybe I'm misunderstanding.)


David

-- 
David A. Black
dblack / wobblini.net