is there a reason why clojure source uses so much interfaces but not protocols? e.g. ifn/deref/meta like clojurescript does. will there a performance penalty or it’s just historic reasons?
not a clojure dev, but historic reasons IIRC. clojurescript, which appeared later, is much more reliant on protocols
mostly for bootstrapping reasons