I second this idea. But maybe there are some other points of view (the method was changed for some reason after all)
Uko On 05 Sep 2014, at 15:26, Camille Teruel <camille.ter...@gmail.com> wrote: > > On 5 sept. 2014, at 15:12, Yuriy Tymchuk <yuriy.tymc...@me.com> wrote: > >> Hi everyone, >> >> I think that it’s essential to solve this, please take a look: >> https://pharo.fogbugz.com/f/cases/13962/canPerform-same-as-canUnderstand > > Before #canUnderstand was checking if the class understands a selector and > canPerform: was also checking if the method has an implementation (it is not > a shouldBeImplemented, subclassResponsibility or explicitRequirement). When > it changed some critic rules got crazy, raising critics that should not have > been. > I think we should just rollback to that old behavior, for ex with: > > canUnderstand: aSymbol > ^ (self lookupMethod: aSymbol) notNil > > canPerform: aSymbol > ^ (self lookupMethod: aSymbol) > ifNil: [ false ] > ifNotNil: [ :m | m isProvided ] > > Camille > >> Uko > >