I choose to write recursive routines using timers instead. (Even though it is bad mIRC mojo).

But that's just me.

Code:
alias testt {
  var %i $1
  if (%i > 3) { halt }
  echo -a Timer iteration: %i
  inc %i
  .timer -m 1 1 testt %i
}