当某些参数在 elisp 中为常量时,将具有多个参数的函数映射到列表

Mapping a function with multiple arguments to list when some are constant in elisp

将带有多个参数(其中一些参数是常量)的函数应用到 elisp 中的列表的正确方法是什么?我习惯了 R,在那里你可以传递命名参数的映射函数(除了函数和列表),这些函数作为参数传递给正在应用的函数。 elisp中有这样的东西吗?

例如,我正在尝试使用 add-to-list 添加一些变量。我需要像这样创建一个匿名函数还是有其他方法?

(setq some-alist (list))
(mapc (lambda (x)
        (add-to-list 'some-alist x))
      '(("style-a")
        ("style-b")))

使用 lambda 列表是 Emacs Lisp 中的常用风格。如果你不喜欢 lambda 列表,你可以使用 apply-partially 组合器:

(mapc (apply-partially #'add-to-list 'some-alist)
      '(("style-a" "style-b")))