我正在尝试创建一个将多个进程应用于地图的函数,包括使用“conj”向每个地图添加/更新一些标准项目。我是通过使用“comp”编写其他几个函数来实现的。
所以我试着这样做
(defn everything [extra] (comp (partial conj {:data extra}) another-func) )
哪个不起作用,因为conj想要额外的数据作为第二个参数,而不是第一个。
我认为应该有一种类似直截了当的方式来组成一个curried conj,但我不知道该怎么做。
答案 0 :(得分:3)
最简单的就是写一个匿名函数:
(defn everything [extra]
(comp #(conj % {:data extra}) another-func))