Why are some (many) of Clojure's built-in functions defined using def
, not defn
?
I know that defn
is a shortcut for def
, but I'm wondering if there's some other reason such as efficiency/readability/style considerations/bootstrapping.
Read further down in clojure/core.clj - defn
doesn't exist yet at the top, because that file is building the language as it goes. After several hundred lines, defn
is written, and functions after that are defined with defn
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With