Awesome.
Naive question; is "defn" really necessary?, isn't "let" and "lambda" enough to express a program?.
Naive question; is "defn" really necessary?, isn't "let" and "lambda" enough to express a program?.
This is particularly true in clojure, since it's being compiled to java byte-code, and the jvm has a few default settings for how deep it'll look into the call tree for inlining. See https://www.youtube.com/watch?v=0tUrbf6Uzu8 for a talk that mentions this.
Although it does 'flatten' the bindings. Defn a, Defn b… is the same as let a = … in let b = … in …