Just a guess, maybe to allow method adding from debugger and then ability to continue execution?

Cheers,
Alex

On Thu, Feb 25, 2016 at 5:56 PM, Denis Kudriashov <dionisiydk@gmail.com> 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].

Best regards,
Denis