beginners

code_witch 2026-05-08T08:37:38.008529Z

Hello! For a few years before the AI era I wrote Clojure in IntelliJ/Cursive with Parinfer/Paredit and rainbow parens turned on. The editor handled most of the structural pain for me: I’d “slurp” and “barf” forms around, and Parinfer would keep the brackets balanced as long as my indentation made sense. I almost never thought consciously about where a particular  ]  or  }  should go – the REPL plus the editor gave me instant feedback if something was off. This week I set up a small Clojure project and asked a coding assistant to help with a nested  routes.clj . The model produced a believable route table with… subtly broken brackets deep inside. We fixed it, then broke it again on the next change. And unlike my usual IntelliJ workflow, there was no Parinfer/Paredit on the agent’s side, and no structural editor guarding its edits – the error only surfaced when Clojure complained at compile time. For those of you here working in Clojure (or other Lisps): how are you extending your classic REPL + structural editing workflow to include coding agents that don’t live inside IntelliJ/Emacs? What has actually worked?

Ed 2026-05-08T08:46:00.278639Z

I don't really use AI tools much, but you might want to look in #ai-assisted-coding?

👍 2
Allan Gonçalves 2026-05-08T09:10:03.551179Z

one way to deal with it is using the https://github.com/bhauman/clojure-mcp-light#clj-paren-repair from clojure-mcp-light. Is fairly simple and make you save some tokens from the LLM looping to fix the unbalanced parens issue 🙂 I've also seen some folks using https://github.com/licht1stein/brepl

code_witch 2026-05-08T10:42:52.659389Z

Thank you! Have taken this thread to https://clojurians.slack.com/archives/C068E9L5M2Q/p1778237685328229

Nathan 2026-05-09T15:01:57.479509Z

You should have a hook/plugin that runs after every edit to ensure you're writing proper clojure. That's a deterministic signal and your tools should handle it, not the agents.

👍 1