re: Not recursion per se...
What you are thinking of is asynchronous processing of events. Not the same thing as recursion, as the functions are not calling themselves - either directly or indirectly. Instead, you have an event processor that delegates to the procedures as the events are tripped.
Synchronous or Asynchronous is not the issue, as I see it. It is "run-away" triggers. Event A could trigger event B, which could trigger event C, which could trigger event A *again*, repeating the cycle. Being Sync or Async may make very little difference.
________________
oop.ismad.com