Есть ли лучший способ сопоставить все, кроме первого элемента? Я чувствую, что должен быть более чистый способ сделать это, но я этого не вижу. (defn map-rest "Passes through the first item in coll intact. Maps the rest with f." [f coll] (concat (list (first coll)) (map f (rest coll)))) Ответ 1 Разрушение и использование cons вместо concat: (defn map-rest [f [fst & rst]] (cons fst (map f rst))) Выход REPL: user=> (map-rest inc [1 2 3 4 5]) (1 3 4 5 6)
Ответ 1 Разрушение и использование cons вместо concat: (defn map-rest [f [fst & rst]] (cons fst (map f rst))) Выход REPL: user=> (map-rest inc [1 2 3 4 5]) (1 3 4 5 6)