just realized this would not work, because the `finally` argument will be evaluated too early; in this case, `timerCallbacks$clear()` will be called before `expr` is evaluated