does the 'fun only deal atom ? if the function is deal with lists like 'distance ?
here's my function for deal arg-type
;; multi-mapcar
;; _map_fun ---- function , it can be (lambda (x) ...)
;; _map_typ ---- Type , REAL FILE STR INT SYM LIST SUBR EXSUBR PICKSET ENAME PAGETB
;; _map_lst ---- a list
;;
;; e.g
;; (ss-mapcar (lambda (x) (vl-string-trim " " x)) (quote STR) '(( " 1 " " 22 ") (" aA " "bB ")))
;; --> (("1" "22") ("aA" "bB"))
;; Use for Excel string: (ss-mapcar (lambda (x)(vl-string-trim "`\t" x)) (quote STR) lst)
;;
;; by GSLS(SS) 2013-10-25
(defun ss-mapcar (_map_fun _map_typ _map_lst)
(mapcar (function (lambda (_lambda_x)
(cond ((= (type _lambda_x) _map_typ)
(_map_fun _lambda_x))
((= (type _lambda_x) (quote List))
(ss-mapcar _map_fun _map_typ _lambda_x))
(t _lambda_x))
)
)
_map_lst))