我有一系列的功能,都做不同的事情,但传递相同的数据。假设我有以下参数向量。如何避免clojure中的重复函数参数?
[{:keys [x y vx vy x-min x-max y-min y-max] :or {x-min 0 x-max c-width y-min 0 y-max c-height}}]
基本上你不想重复的东西的类型不止一次。我以为有一个想法是做类似的事情。
(def func-args [x y z])
(defn func func-args (+ x y z))
然后我可以重新使用func-args,如果我有类似的功能。但是,前面示例的第一行引发了一个符号x无法解析的错误。
- 有没有办法让矢量成员作为符号?
- 有没有比我建议的方法更加通俗的方法来完成函数参数代码膨胀减少?
如果绑定的矢量值,你”会避免你遇到的错误。 – jmargolisvt
也许真正的问题在于,对于所有这些论点,你的功能太复杂了。 –