@lee been trying to wrap my head around defprotocol+ - if you don't mind me asking, why do you think this is used over vanilla defprotocol in rewrite-clj? the original docs say: a protocol that won't evaluate if an equivalent protocol with the same name aleady exists. the version in rewrite-clj is a simpler version, right?
@sogaiu I remember asking myself the very same question and came to the foggy conclusion that it is just a performance optimization. I can’t tell you if it is still necessary but we could someday do perf tests with and without it to see what it gives us. For cljs it is currently a no-op.
thanks!
i experimentally removed all of potemkin except defprotocol+ the other day when trying to get proto-rewrite-cljc to work with babashka the other day, so may be i can try without deprotocol+ too.
well rewrite-clj uses defprotocol+ as well. I’m guessing it might be the edn reader I am using that is causing graal problems, but that is just a wild guess.
thanks for the guess - it can help to have something concrete to start from :)
I’d join you in your experiment, it seems like a fun exploration, but I am currently distracted by cljdoc and diffing apis. :simple_smile:
np - hope that is going well :)
yep! all roads lead out from rewrite-cljc, hopefully they also lead back!