Управление количеством скобок в clojure

Я новичок в clojure, и главное, с чем я борюсь, это написание читаемого кода. Я часто получаю функции, подобные приведенной ниже.

(fn rep 
  ([lst n]
    (rep (rest lst)
    n
    (take n 
      (repeat (first lst)))))
  ([lst n out]
    (if
      (empty? lst)
      out
      (rep 
        (rest lst) n
        (concat out (take n 
          (repeat 
            (first lst))))))))

с большим количеством наростов концевых скоб. Каковы наилучшие способы уменьшить это или отформатировать его таким образом, чтобы было легче обнаруживать отсутствующие скобки?

8
задан Jim Jeffries 10 April 2012 в 19:37
поделиться