svoid onFileChange(double seconds, File file, long lastModificationSeen default modificationTime(file), Runnable r) { doEvery_daemon(toMS(seconds), new Runnable { long lastMod = lastModificationSeen; run { long mod = modificationTime(file); if (mod != lastMod) { lastMod = mod; call(r); } } }); call(r); }