本文作者反思了自己对 Lisp 语言中 SETF 宏的错误理解。作者最初认为 SETF 的第一个参数是一个定位表达式,返回要更新的位置,第二个参数是新的值。但实际上,SETF 是一个宏,它在编译时查看其第一个参数的结构,并使用它来分派给一个方法。作者详细解释了 SETF 的工作原理,并提供了一些例子说明其灵活性。最后,作者得出结论:SETF 是宏、合成函数名和泛型函数的高度结构化使用,展示了 Lisp 语言的强大功能。