@josh604 For (defn f [a b c]), calling (apply f ’(1 2)) will incur Execution error (ArityException)
However, in cljs, the exception won’t happen.
As I said, that's because CLJS compiler does that check. The platform, which is JS, does not impose such a constraint on functions in runtime. CLJS does not check arities in runtime as well.
This particular inconsistency between CLJ and CLJS, along with many others, is caused by the differences in the underlying platforms.