--Â Marcus Denker Sent with Airmail On 17 Oct 2014 at 11:45:23, Max Leske (maxleske@gmail.com) wrote:
On 17.10.2014, at 11:39, Sven Van Caekenberghe <sven@stfx.eu> wrote:
On 17 Oct 2014, at 11:12, Tudor Girba <tudor@tudorgirba.com> wrote:
Exactly. So, the problem with Set is not in hash at all, but in equality. Of course, we can still enhance hash, but we should first focus on equality.
And I am also of the opinion that equality should take the name of the selector and even the name of the class into account.
From a modelling standpoint it sounds as if one object (CompiledMethod) is used for two different things which results in the conflicting ideas about implementing equality and hashing. A CompiledMethod should hold a CompiledCode object while adding the selector and class. The CompiledCode object could then be equivalent or even be optionally shared among similar methods (like all those implementing ^self).
Just an external observation / idea.
Yes, pretty much what I was thinking. I donât know what the consequences would be for the VM though... Yes, I think, too, that many of the problems with CompiledMethod come from the fact that we âabuseâ a low level object in a context where people want a higher level concept. Marcus