You’re throwing alway all the names of the arguments and using arbitrary words like “conv” to represent operations.
This is typical bad clojure in my experience; write once, forget wtf the magic was, throw away and rewrite it again later.
Clojure doesn’t have to be incomprehensible arcane magic that does everything in 10 lines.
The more complex the code, the more important it is that what you do is clear and clearly documented.
Don’t write a 1 line regex to solve a complicated problem; it’s the wrong tool for that job, no matter how smart your substring matches are.
You don’t win a prize for making unmaintainable code.
I similarly think the goal of being burning my concise in ML code is deeply misguided.