Reply - Raw
def interval(delay, start=None):
    end = [time.time() + start if start is not None else time.time() + delay]
    def f():
        now = time.time()
        if end[0] < now:
            end[0] += delay
            return True
    return f