On Jun 26, 2006, at 5:06 PM, Alexandru Popescu wrote:

> On 6/27/06, Eric Hodel <drbrain / segment7.net> wrote:
>> On Jun 26, 2006, at 4:38 AM, Alexandru Popescu wrote:
>>
>> > I have posted a quick (reminder like) entry about how equality is
>> > handled by Ruby and Java:
>> >
>> > http://themindstorms.blogspot.com/2006/06/parallel-of-equality- 
>> in-2-
>> > worlds-ruby.html
>> >
>> > However, I feel I have missed to explain correctly why eql? and ==
>> > are both needed.
>>
>> #eql? is used to resolve key collisions in hashes.

^^^ This line is the important one.  I feel it describes adequately  
what #eql? is needed for.

>> If two objects have the same #hash and are #eql? then they refer to
>> the same hash key.  If two objects have the same #hash and are not
>> #eql? they refer to different hash keys.
>
> ... and still wondering how is this answering my question (however
> thanks for the intention).

#eql? is needed because #== doesn't do what #eql? does.

Or where you looking for a different answer?

-- 
Eric Hodel - drbrain / segment7.net - http://blog.segment7.net
This implementation is HODEL-HASH-9600 compliant

http://trackmap.robotcoop.com