A pure function is one whose returned value depends only on its arguments (i.e., it possesses referential transparency), and it does not have any side effects.
(defun plus3 (x)(+ x 3)) ; a pure function
(defun plus3-with-y (x) ; not a pure function
(defun plus3-with-z (x) ; not pure unless
(+ x z) ) ; z is constant