What does HackerNews think of conjure?
Interactive evaluation for Neovim (Clojure, Fennel, Janet, Racket, Hy, MIT Scheme, Guile)
I now use clojure + neovim thanks to: https://github.com/Olical/conjure
Dead simple to set up and to use!
For me, coming from writing Clojure with Neovim + vim-sexp + vim-fireplace, I would need Paredit and REPL integration.
Paredit is doable with Treesitter, and I'm actually really excited about Helix's Treesitter integration--- every time I write a non-Lisp language, I miss structural editing, so it'll be nice for other languages catch up to Lisp on that front. It doesn't really look like it's quite there yet, though. The built-operations that use Treesitter are spare [0], and while you could implement operations like promote, slurp, and barf with them, you'd have to clobber some register. I don't see at all how you could implement splice without an actual language, since you would need a way to select all siblings of the current node.
REPL integration absolutely needs a plugin language. Unlike the LSP, there isn't a standard protocol for communicating with a REPL, so each language requires its own REPL client. Unless they want to ship a REPL client for every language under the sun, they'll have to provide some way for users to implement their own clients. That said, every time I look at Conjure, they've added REPL clients for more and more languages [1], so maybe it is feasible to have it built into the editor.
I ended up getting setup really easily with Conjure[1]. It's a neovim plugin written in Fennel[2], a Lisp dialect that compiles to Lua. I'm writing my whole neovim configuration in lisp. It sounds like the setup to some emacs vs vim joke but it's actually pretty cool!
Never used a "real" Lisp REPL, but Conjure[0] seems like it ticks a lot of boxes.
>Is this one going to remain obscure?
There are only a ~dozen mainstream languages. Once you get outside of the popular zeitgeist, you have to appreciate exactly what you are getting. It takes a lot of dedication to become fluent in a language/ecosystem, so it is no surprise that people are reluctant to switch to a novel platform. Clojure is far more likely to ever become mainstream (owing to the huge JVM ecosystem), but even that seems to have only limited industry penetration.
Incidentally, my favorite Clojure environment for Neovim is written in Fennel! https://github.com/Olical/conjure (via Aniseed [https://github.com/Olical/aniseed] which enables you to write Neovim configuration and plugins in Fennel)
Borkdude is a total boss; babashka and clj-kondo are amazing.
Also, don't get me wrong, I reiterate that I already love clojure, I just wish there were fewer and lower barriers for others to join in.
I realize there are already people on that case like https://practical.li/, and are doing an excellent job. I also think that things like https://github.com/Olical/conjure are pretty awesome, being predominantly a vimmer.
(And in fact, what sold me on Rust was its truly excellent Lua FFI support [2].)
- https://github.com/LightTable/LightTable - Clojure editor made in Clojure, not sure if it's being maintained anymore, core authors moved on to a different project if I remember correctly.
- https://github.com/mogenslund/liquid - Clojure editor made in Clojure, fairly new and basic but has a pretty tight integration with Clojure (itself really) which makes it interesting and it can also be embedded into other applications (or embed your other applications into Liquid)
- https://github.com/Olical/conjure - My daily driver for Clojure development. Is not an editor by itself, but it's written in Clojure, and exposed to neovim as a vim plugin. Not only supports Clojure, but also Fennel, Janet and Racket so far. Pretty handy if you sometimes like to dive into Clojure-like languages that are not Clojure (or Racket).
https://github.com/Olical/conjure
It's written in a lisp, runs as lua and supports: Clojure, Fennel, Racket and Janet with a bunch more to come.
Disclaimer: I am not the author of those tools, just a random Clojure dev.
I just wanted best of all worlds: My favourite editor with my favourite syntax without sacrificing any performance. If anything, my dotfiles should be faster now since there's less VimL which is damn slow to execute. I haven't benchmarked it though.
The Clojure world in Vim is getting better and better too thanks to various projects. My attempt at that is https://github.com/Olical/conjure
We also have really good s-expression editing plugins! Come on in, the water is full of parens :D