在Common Lisp中,你可以这样做: (defun foo (bar &key baz quux) (list bar baz quux)) (foo 1 :quux 3 :baz 2) ; => (1 2 3) Clojure没有关键字参数。 一个替代scheme是: (defn foo [bar {:keys [baz quux]}] (list bar baz quux)) (foo 1 {:quux 3 :baz 2}) ; => (1 2 3) 这是太多的嵌套括号,必须键入和阅读所有的时间。 它还需要一个明确的哈希映射作为参数而不是平面列表传入。 关键字参数的最常用的Clojure等价物是什么,看起来没有人标点符号炸弹?