根据this question,可以像这样创建函数的别名:
(defun some-function () ...)
(setf (fdefinition 'sfunc) #'some-function)
可是:
(defun some-function () ...)
(defun (setf some-function) () ...)
(setf (fdefinition 'sfunc) #'some-function)
> (setf (sfunc) ...)
; caught STYLE-WARNING:
; undefined function: (SETF SFUNC)
不为setf函数创建别名。如何为setf函数创建别名?
答案 0 :(得分:5)
(setf (fdefinition '(setf sfunc)) (fdefinition '(setf some-function)))