[Pharo-project] About SourcedMethodReference
benjamin.vanryseghem.pharo at gmail.com
Wed Nov 10 10:14:12 CET 2010
On Nov 10, 2010, at 8:43 AM, Johan Brichau wrote:
> There is still a lot to be done, so I did not know the changes were
> already integrated ;-)
> But the subclassing construction is temporary to allow code to
> migrate to the new sourcereference framework.
> Benjamin: is the latest version in 1.2 or on pharotaskforce or ... ?
The last version is in !.2, and I'm still working on killing
MethodReference references (I've done a ChangeSorter, I'm still
playing with it, expecting for explosions ^^ If you want to play with
it too, just say it to me)
> On 10 Nov 2010, at 04:22, Benjamin wrote:
>> On Nov 9, 2010, at 10:48 PM, Luc Fabresse wrote:
>>> Hi all,
>>> When SourcedMethodReference have been introduced, some tests in
>>> SystemNavigationTest turned yellow.
>>> The tests are currently expecting a MethodReference.
>>> If I modify the tests to exepect a SourcedMethodReference, the
>>> problem is now on:
>>> ^self == aMethodReference.
>>> Why this has been redefined in SourcedMethodReference?
>> It has been redefined becausea the end, we want to remove
>> MethodReference, and this is the default behavior for the method =
>>> I think that the super class (MethodReference) implementation is
>>> semantically better. No?
>>> MethodReference>>= anotherMethodReference
>>> "Answer whether the receiver and the argument represent the
>>> same object."
>>> ^ self species == anotherMethodReference species
>>> and: [(self classSymbol = anotherMethodReference classSymbol)
>>> and: [(self classIsMeta = anotherMethodReference classIsMeta)
>>> and: [self methodSymbol = anotherMethodReference
>> This method doesn't answer what we expect anymore, because here,
>> two references (with different source) pointing on two versions of
>> the same method are evaluate as equal, and we do not want that.
>> About tests, JB and I had wrote a fix, but we have lost it ...
>> But I will take a look at that asap
>> Thank you for your feedback
More information about the Pharo-project