次の形式をとる関数があります
(defn foo [& {:keys [x y z]}]
...)
そして、キー y と z のみを受け取り、常に x に同じ値を与える関数を作成したいと考えています。このように書くことができました
(defn bar [& {:keys [y z]}]
(foo :x "blah" :y y :z z))
私の唯一の問題は、 {:keys ...} ビットをもう一度繰り返さなければならず、実際の関数 foo にはさらに多くのキーがあり、将来変更される可能性があることです。xが同じままであることを確認しながら、barにキーと値のペアを受け入れさせ、それらをすべてfooに渡す方法はありますか?