It probably is better programming practice to use booleans where applicable... but don't underestimate the power of numerical variables
They can be a lot of things besides 1 or 0. I often use things like
daytime to insert a timing function into a variable without actually having a separate timing function. eg.
_now =
daytime + (60/3600)
@
daytime > _now
So that'd make the script wait for 60 seconds (daytime works in hours, so you have to divide by 3600 to get seconds).
Anyway, my point is there are heaps of cunning tricks you can use with numerical variables as opposed to boolean, but they do use up more resources...