(defun modify-checher (filename) (let ((last-update nil)) (labels ((checher (stream) (let ((present (file-write-date stream))) (unless (equal last-update present) (print "modified!") (setf last-update present))))) (with-open-file (stream filename :direction :input) (setf last-update (file-write-date stream)) (loop do (sleep 5) (checher stream))))))