CL-USER> (defvar *debug-mode-p* t) *DEBUG-MODE-P* CL-USER> (defmacro with-debug (&body body) (when *debug-mode-p* `(progn ,@body))) WITH-DEBUG CL-USER> (defun foo () (with-debug "debug mode!")) FOO CL-USER> (foo) "debug mode!" CL-USER> (setf *debug-mode-p* nil) NIL CL-USER> (defun foo () (with-debug "debug mode!")) WARNING: redefining COMMON-LISP-USER::FOO in DEFUN FOO CL-USER> (foo) NIL