2 ms·
That could be done as: (defn function "doc" [a b & rest] "body") However, matching by arity at the front really helps make simple functions clean. I really
by Tuna-Fish 13y ago
That could be done as:
(defn function "doc" [a b & rest] "body")
However, matching by arity at the front really helps make simple functions clean. I really like the multiple body approach, as in my code there's typically one "standard" case, and the rest are special cases that just call the standard one with new params. Having to deal with a rest arg with potentially multiple possible lengths just doesn't look as clear in practice.
It's all tradeoffs. I can see why you'd like the arglist first -- I have some Haskell background, and I do miss it's types in Clojure, just for the documentation they provide.