Look at example:
methodA
�� | result |
�� result := false.
�� [result := self methodB] ensure: [result ifTrue: [...]]
methodB
�� ��result := 1 < 2.
�� ^result
Imagine now that methodB starts execution in context of call inside methodA.
Is it possible to terminate process at point of methodB return (^result)?��
In that case ensure block in methodA will perform wrong logic.