Hi Denis,
On Thu, Feb 25, 2016 at 8:56 AM, Denis Kudriashov <[email protected]> wrote: > Hi. > > Does anybody know why #doesNotUnderstand: is implemented with recursion at > the end? > > doesNotUnderstand: aMessage > | exception resumeValue | > (exception := MessageNotUnderstood new) > message: aMessage; > receiver: self. > resumeValue := exception signal. > * ^exception reachedDefaultHandler* > * ifTrue: [aMessage sentTo: self]* > ifFalse: [resumeValue]. > > It's so that when a doesNotUnderstand: occurs and one implements the method in the debugger one can proceed. The sentTo: at the end will now invoke the newly defined method and one can continue programming. Best regards, > Denis > _,,,^..^,,,_ best, Eliot
