[#2968] dbm/gdbm/sdbm etc — Dave Thomas <dave@...>
Does ext/dbm supersede gdbm and sdbm?
7 messages
2004/06/07
[#2977] Enumerable#each_with_index in "ri" — Johan Holmberg <holmberg@...>
11 messages
2004/06/12
[#3132] Reporting RI-documentation corrections ?
— Johan Holmberg <holmberg@...>
2004/07/05
[#3133] Re: Reporting RI-documentation corrections ?
— Dave Thomas <dave@...>
2004/07/05
[#3135] Re: Reporting RI-documentation corrections ?
— Austin Ziegler <halostatue@...>
2004/07/05
Speaking of ri documentation, is there anywhere that documents the
[#2978] Date.from_time — Gavin Sinclair <gsinclair@...>
Folks,
5 messages
2004/06/13
[#2982] Array#shift(n) — Michal Rokos <michal@...>
Hello,
15 messages
2004/06/14
[#2985] Re: [Patch] Array#shift(n)
— nobu.nokada@...
2004/06/14
Hi,
[#2987] Re: [Patch] Array#shift(n)
— matz@... (Yukihiro Matsumoto)
2004/06/14
Hi,
[#2988] Re: [Patch] Array#shift(n)
— Michal Rokos <michal@...>
2004/06/14
On Monday 14 of June 2004 16:13, Yukihiro Matsumoto wrote:
[#2989] Re: [Patch] Array#shift(n)
— matz@... (Yukihiro Matsumoto)
2004/06/14
Hi,
[#2991] Re: [Patch] Array#shift(n)
— Michal Rokos <michal@...>
2004/06/14
Hello,
[#2998] Re: [Patch] Array#shift(n)
— nobu.nokada@...
2004/06/15
Hi,
[#2999] Re: [Patch] Array#shift(n)
— Michal Rokos <michal@...>
2004/06/15
Hello,
[#3006] CVS repository — "Eugene Scripnik" <hoaz@...>
Hello.
21 messages
2004/06/16
[#3008] Re: CVS repository
— ts <decoux@...>
2004/06/16
>>>>> "E" == Eugene Scripnik <hoaz@gala.net> writes:
[#3009] Re: CVS repository
— Michal Rokos <michal@...>
2004/06/16
Hi!
[#3010] Re: CVS repository
— Elliott Hughes <ehughes@...>
2004/06/16
On Wed, 2004-06-16 at 09:45, Michal Rokos wrote:
[#3011] Re: CVS repository
— ts <decoux@...>
2004/06/16
>>>>> "M" == Michal Rokos <michal@ruby-lang.org> writes:
[#3012] Re: CVS repository
— "Eugene Scripnik" <hoaz@...>
2004/06/16
Hello.
[#3027] rb_mod_freeze??? — Michal Rokos <michal@...>
Hello!
5 messages
2004/06/17
[#3047] Move all stack info to gc.c — Michal Rokos <michal@...>
Hello,
13 messages
2004/06/23
[#3049] Re: [Patch] Move all stack info to gc.c
— matz@... (Yukihiro Matsumoto)
2004/06/23
Hi,
[#3057] Ruby 1.8.2 to be released. — matz@... (Yukihiro Matsumoto)
Hi,
20 messages
2004/06/23
[#3060] Re: Ruby 1.8.2 to be released.
— Hugh Sasse Staff Elec Eng <hgs@...>
2004/06/23
On Thu, 24 Jun 2004, Yukihiro Matsumoto wrote:
[#3063] Re: Ruby 1.8.2 to be released.
— matz@... (Yukihiro Matsumoto)
2004/06/23
Hi,
[#3090] class= and type checks when casting — "Sean O'Dell" <sean@...>
Matz, I'm not sure if you followed the discussion in ruby-talk about having a
6 messages
2004/06/25
[#3095] 1.8.2: Segfault — Elven <elven@...>
6 messages
2004/06/26
[#3102] gdbm abort - OSX — Dave Thomas <dave@...>
Just before I start another debugging session, has anyone seen this, or
7 messages
2004/06/27
Re: member? / include?
From:
Johan Holmberg <holmberg@...>
Date:
2004-06-05 13:21:41 UTC
List:
ruby-core #2967
On Sat, 5 Jun 2004, Johan Holmberg wrote:
>
> Another example (beside entries/to_a) of halting synonyms is
> Enumerable#member? and Enumerable#include?. [...]
Yet another example of difference, this time in Range:
p ("aa".."az").include?( "alpha" ) # => true
p ("aa".."az").member?( "alpha" ) # => false
p ("aa".."az").entries.include?( "alpha" ) # => false
p ("aa".."az").entries.member?( "alpha" ) # => false
p (1..10).include?( 3.14 ) # => true
p (1..10).member?( 3.14 ) # => false
I guess this is because Range tries to be both a discrete range and
a "continuous" range. The documentation is not clear about this
difference:
$ ri Range.include\?
[...]
Returns +true+ if _obj_ is an element of _rng_, +false+
otherwise. Conveniently, +===+ is the comparison operator used
by +case+ statements.
[...]
$ ri Range.member\?
[...]
Return +true+ if _val_ is one of the values in _rng_ (that is
if +Range#each+ would return _val_ at some point).
[...]
If one looks at both these documentation entries it is easy to see
that there *might be* a difference between the methods (since the
text is different). But I don't think it is obvious what difference
there is between "is an element of _rng_" and "is one of the values
in _rng_", especially if one reads one of these entries in
isolation.
It should probably be pointed out in the documentation that
Range#include? tests according to <=> to see if _obj_ is inside the
interval given by the endpoints of the Range.
As I said in an earlier mail, my spontaneous opinion is that it
would be more natural if the synonym-relation between
include?/member? was preserved in the classes including Enumerable.
Then what is now Range#include?, could be renamed to something more
descriptive (e.g. Range#inside? or something similar).
Or maybe all these aliases should be removed altogether ?
But I guess that is out of the question ;-)
/Johan Holmberg