What’s the benefit of writing this in Clojure, instead of in Java and designing it such that calling it from Clojure feels natural? Does it use any Clojure specific features or have strict Clojure dependencies?
I should have said "or" instead of "and". I think it's a valid question in the context of your code size comparison.