>> (defun abc (n) >> (macrolet ((mmm (z) `(gethash ,z *bob*))) >> (setf (mmm n) 5))) I believe that the preceeding should be permitted, but it requires that get-setf-method be permitted to take a second, environment, argument. Such a change may have already been proposed. -john foderaro franz inc.