Some functional approach
(mapcar function (directory (merge-pathnames wildcard path)))
mapcar - applies function to the provided list of arguments generated by directory. function has to accept only one argument.
Working Example
61650326.lisp
;;;; File : 61650326.lisp
;;;; Modified : <2020-5-08 Fri 08:51:12 BST>
;;;; URL : https://stackoverflow.com/questions/61650326
(defparameter *user-path* "t/user/myfiles/")
(defparameter *wildcard* "*.txt")
(defparameter *function* 'type-of)
(defun map-on-files (path wildcard function)
"Map FUNCTION on a list of files found under PATH WILDCARD."
(mapcar function (directory (merge-pathnames wildcard path))))
(format t "~{~A~%~}" (map-on-files *user-path* *wildcard* *function*))
Generating some files for test purpose:
~$: mkdir -p t/user/myfiles
~$: for i in $(seq 10); do mktemp -p t/user/myfiles/ --suffix=.txt; done
t/user/myfiles/tmp.S4wKkJ85sq.txt
t/user/myfiles/tmp.j3XeT2hneq.txt
t/user/myfiles/tmp.mut6GLhlaT.txt
t/user/myfiles/tmp.1l0I5oGDaR.txt
t/user/myfiles/tmp.hBpvOfarye.txt
t/user/myfiles/tmp.m1WfmZxrU8.txt
t/user/myfiles/tmp.o6QbvjXMh9.txt
t/user/myfiles/tmp.6CmPvWf7GO.txt
t/user/myfiles/tmp.ZNWcaymY0g.txt
t/user/myfiles/tmp.JfUQ4cW0dD.txt
And Run code snippet
~$: sbcl --script 61650326.lisp
PATHNAME
PATHNAME
PATHNAME
PATHNAME
PATHNAME
PATHNAME
PATHNAME
PATHNAME
PATHNAME
PATHNAME
formatdirectives: lispcookbook.github.io/cl-cookbook/…