Fork me on GitHub

I'm writing a new linter to find unused values... and yikes, I found one in clj-kondo... One of the category: how could this ever have worked

laughcry 2
🎉 1

The unfortunate answer is that since it hasn’t worked, now this same behavior is probably scattered across the relevant code paths making the whole thing a bit more complex… 🙂

Noah Bogart20:09:40

Can’t wait to turn this on in my production code. How does it know what is or is not a pure function?


It has a list borrowed from our friends at #eastwood called var-info.edn

🎉 1
Noah Bogart22:09:43

Does clj-kondo do anything different than rewrite-clj when parsing?



👍 1

It entirely skips whitespace and I think it also parses metadata differently.

👍 1
Noah Bogart22:09:19

Are the differences documented anywhere?


It might also deal with namespaced maps differently. I think rewrite-clj got inlined (then customized) from rewrite-clj v0.

👍 1
Noah Bogart22:09:39

Ah thank you. I’m working with rewrite-clj for that pattern matching library i mentioned the other day but realized once I started that there are probably differences