;; with-open-file.jl --- Lisp-style with-open-file macro ;; ;; Author: Mark Triggs ;; (defmacro with-open-file (filespec &rest body) (let ((f (car filespec)) (file (cadr filespec)) (direction (caddr filespec))) `(let ((,f (open-file ,file ,direction))) (unwind-protect ,@body (when ,f (close-file ,f)))))) (provide 'with-open-file)