Hello,

The timer function doesn't seem to always keep track of what order timers were called. In this code...

Code:
alias timet {
  var %j -1
  while %j < 3 {
    .timer 1 %j echo -a %j
    inc %j
  }
}


...one would expect the output to be -1, 0, 1 then 2. However, it always gives the output in this order: 0, -1, 1, 2. Now, I understand that giving /timer a negative number might throw an exception, so I tested that as well using the following code.

Code:
alias timet {
  var %j -1
  while %j < 3 {
if %j < 0 { var %k 0 }
else { var %k = %j }
    .timer 1 %k echo -a %j -- %k
    inc %j
  }
}


It still produces the same erroneous output.

However, if one uses the -h switch the problem seems to vanish. I can't imagine this is intended behavior, though.


Yar