Fennel is indeed nice and I rewrote my config in it too, but looked back ~2 years later and rewrote it again in Lua. I think Fennel for configuration is not justified and just adds complexity. Also the tools are not there: two existing language servers[1][2] can't compete with Sumneko's Lua language server[3] and they are fennel-exclusive and clueless about Lua code. I still like Fennel for writing more complicated code (my plugins: [4][5]) because of neat features like pattern matching and structural decomposition, both are surprisingly robust.

[1]: https://git.sr.ht/~xerool/fennel-ls/

[2]: https://github.com/rydesun/fennel-language-server

[3]: https://github.com/LuaLS/lua-language-server

[4]: https://gitlab.com/repetitivesin/16cm.nvim/-/tree/main

[5]: https://gitlab.com/repetitivesin/madol.nvim

I find most niche / less popular languages lack the developer tools ecosystem in ways that simply hinders adoption by more devs.

A good and comprehensive LSP for example. It really needs to be on par with other languages to increase adoption

> I find most niche / less popular languages lack the developer tools ecosystem in ways that simply hinders adoption by more devs.

Niche languages often serve specific purposes that don't require broad tooling. They also sometimes can leverage tooling from more popular languages. Less popular doesn't necessarily mean less capable - some niche languages have excellent tooling in their domain. Not to mention that not all developers need the same type of tooling or prioritize certain set of tools equally, like for example, for me personally - homoiconicity and REPL-connectivity in a language are far more important than LSP or some other things.

I’ve been dipping my toe in Lua and found some ways to achieve pattern matching of sorts and there’s a package called Tamale too but I’m not sure if that is used much.