Hi Richard, On Wed, Oct 15, 2014 at 10:50 AM, Richard Sargent < richard.sargent@gemtalksystems.com> wrote:
Eliot Miranda-2 wrote
I responded...
I have to disagree with your recommendation. You say that you intend #= to mean "has the same effect as" rather than "is the same as".
One of the best things about Smalltalk is how easily we can say what we mean. I think you would be better off creating a method named something like #hasSameEffectAs: to answer what you are presently using #= to do, and change #= to answer the, in my opinion, more sensible "is the same as" that we conventionally think of #= meaning.
But that's the point. #= has to mean something and having it mean #== isn't useful, so one has to choose some value-based semantic for CompiledMethod>>#= and the one that's there is useful. Defining what #= means for some value type is far easier than defining what it might mean for something as complex as a CompiledMethod. The definition in Squeak/Pharo has been useful to me in implementing a closure-based system, so I'm unapologetic about the current definition. It is a good one but it doesn't preclude defining others. $0.02 worth and worth everything you paid for it. :-)
Richard
-- View this message in context: http://forum.world.st/CompiledMethod-hash-can-produce-clashes-tp4784722p4784... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
-- best, Eliot