我无法理解折叠函数列表并使用特定参数调用它们所需的方法。
这是我假设的工作。我已经尝试了各种变体,使用eval
等。任何指针?
(mapcar (lambda (fn) (fn 'utf-8))
(list #'set-terminal-coding-system
#'set-keyboard-coding-system
#'prefer-coding-system))
当我运行它时,我只会得到“符号的函数定义是无效的:fn”。
编辑 | 好的,所以这行得通,但是当上面的示例通过synaxapply
传递函数时,需要使用它似乎很奇怪。#'function-name
(mapcar (lambda (fn) (apply fn '(utf-8)))
'(set-terminal-coding-system
set-keyboard-coding-system
prefer-coding-system))