-(declaim (ftype (function (index) list) make-gensym-list))
-(defun make-gensym-list (n)
- (loop repeat n collect (block-gensym)))
+(declaim (ftype (function (index &optional t) (values list &optional))
+ make-gensym-list))
+(defun make-gensym-list (n &optional name)
+ (case name
+ ((t)
+ (loop repeat n collect (gensym)))
+ ((nil)
+ (loop repeat n collect (block-gensym)))
+ (otherwise
+ (loop repeat n collect (gensym name)))))