well, if you need to remember the current values, you'll need variables. with the millis() option they could be static to the loop if this is the only place they are being used, limited gain (and probably best if the business logic was in its own function so I think the globals are OK)