[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]
integerRegion problems
- To: <tribble>
- Subject: integerRegion problems
- From: Ravi Pandya <ravi>
- Date: Wed, 25 Apr 90 13:41:59 PDT
- Cc: <xtech>
- In-reply-to: <Eric>,37 PDT <9004251827.AA07708@xanadu>
Date: Wed, 25 Apr 90 11:27:37 PDT
From: tribble (Eric Dean Tribble)
'IntegerRegion allIntegers distinctions' breaks!
IntegerRegion isEqual: assumed that MuTables (pointed to as
ScruTables) compare based on content. As a result, 'IntegerRegion make
isEqual: IntegerRegion make' returns false! I made a fix for this that
compares element by element. (Does hashForEqual do the right thing?).
dean
This is a long-standing moose in the table code. MuTables & MuSets should
implement isEqual and hashForEqual based on EQ, since they might
change after they've been used as a table key (for example). In the
current image, Scru implements isEqual by comparing content, then Mu
overrides to do EQ comparison. This is confusing. I suggest the
following solution:
-- add isEquivalent: and hashForEquivalent messages to Scru
protocol that are defined to compare contents
-- have Immu redefine isEqual and hashForEqual to use
equivalence, and have Mu explicitly define them to be EQ
Since you raised the issue, do you want to do it? (I don't think it
will take very long).
--ravi