Special arguments
I have learnt a new trick these days. Did you know that you can declare an argument as a special variable? Quoting Hyperspec:
Each required parameter is specified by a parameter variable var. var is bound as a lexical variable unless it is declared special.
It seems to work also for optional and keyword arguments, but Hyperspec does not mention it explicitly. For example, yo can do:
(defvar *variable*)
(defun foo () *variable*)
(defun foobar (&optional *variable*)
(foo))