Fork me on GitHub

@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.


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!