Here's what we got! Results are interspersed with commentary. Thanks for participating; see you next year!
Note that all multiple-choice questions allow any number of selections and thus totals do not add up to 100%. There were a total of 109 responses.
Since the survey was featured on some bigger news sites, we got a lot more responses this year than last year when there were only a little over half this year's. Many of the answer distributions look the same even when the overall counts were much higher, but a few things have changed.
Looks like people are still staying on the cutting edge. 1.2.0 was released a year ago almost to the day, and everything older is a rounding error.
LuaJIT remains the champion, but 5.4 is giving it a run for its money, up significantly from last year. LuaJIT is used by LÖVE and NeoVim, which are the two most popular applications of Fennel.
We've got a lot more non-luarocks users than last time, but there's still a sizable minority.
Helix went from one response last year to placing just under Vim and VS Code, quite the sudden rise. VS Code has kind of a chicken and egg problem because there aren't a lot of Fennel users that use it, which means fewer people able to contribute and improve its Fennel support, which is currently rather poor. If you'd like to help out, come by the chat or mailing list!
This unfortunately hasn't improved since last year and has gotten a bit worse. As before, it's hard to tell whether men feel more comfortable revealing their gender than others, or whether men feel more comfortable using Fennel overall while others avoid the language; if it's the latter that's a big problem. But how to tell the difference?
Lua has overtaken Python, and Javascript has dropped down a few notches while Typescript has shot up. Rust went from seventh place to third! Swift showed up a fair bit in Other.
The most common answer here was the NeoVim community, which continues to be a strong use case for Fennel. When I took a train last month, I was working on Fennel in the observation car and ran into a NeoVim user who had heard of Fennel thru that community. Hacker News and Lobsters are also brought in a lot of people, and a number of people called out specific friends or other programmers who introduced them.
Those of you who said "Nowhere", come on in and join the chat! Whether you prefer IRC or Matrix, there's an active and fun community discussing All Things Fennel. It's also great to see the Fediverse shooting up to be one of the top choices.
The "personal code that I haven't shared with others" choice was SO popular that it overflowed past the edge of the screen, so that says a a lot! Games remain strong. Good luck to all of you using Fennel secretly at work—I won't tell!
A clear pattern here is that the fact that Fennel is hosted on the Lua runtime matters a lot. #2, #3, #5, and #6 are all things we get for free just by virtue of the VM we target.
Of the things unique to Fennel, syntax and the repl are the real gems. Clear and consistent syntax has always been the #1 choice here, but its lead grows more every year.
One of the "Other" options listed was antifennel, which seems to be a popular learning tool!
Tooling support keeps climbing the list every year, and now it's at the top. We hear you loud and clear. Luckily there has been fantastic progress over the past year on the Language Server Protocol (LSP) front with fennel-ls: https://git.sr.ht/~xerool/fennel-ls If you haven't given this a try yet, you're in for a treat; it really feels much smoother getting instant feedback for compiler errors and warnings, and it helps with code navigation too. Of course there's still more to do here; maybe you can help!
Hostedness here is a double-edged sword as many of these top problems (library ecosystem, no immutable data structures, dynamic tooling support, and unfamiliarity with Lua) are things we also inherit from the runtime.
I'm surprised that reluctance to introduce new languages to your team has ranked so low; I wonder if this means that Fennel has been around long enough that it feels more mature and less of a risk? No one thinks compile time performance is too slow, and no one listed unpleasant community interactions either.
Many of the more thoughtful answers here echoed the tension that's at the heart of Fennel; we want more things, but adding more things would sacrifice the simplicity that makes Fennel so appealing.
Many people mentioned that the compiler output is often weird; in order to ensure we don't double-evaluate certain forms, the compiler sometimes uses what's called an IIFE or immediately-invoked function expression. Often these get optimized away by LuaJIT, but it makes the Lua output harder to read and sometimes it does prevent the JIT from optimizing. We often apply this technique without first checking to see whether it's needed, so that's definitely somewhere we could improve things.
First class source maps are another thing a few different people mentioned. You can usually get better stack traces by running fennel.traceback instead of debug.traceback, but you aren't always in control of how the exceptions get printed.
Lots of people want static types. I admit I have a lot of research I'd need to do before I'd be able to design a type system that wasn't awful. Trust me when I say that you don't want to use the static type system that I'm capable of designing today!
Some people said that they want to see more changes in the Fennel ecosystem and less in Fennel itself.
Some selections of interesting codebases:
Transducers from Clojure in Fennel: https://git.sr.ht/~fosskers/transducers.fnl
A little toy love2d synthesizer: https://git.sr.ht/~evn/birmp/
A unique take on roguelikes: https://aliasing.itch.io/super-rogue
But my favorite answer was "MY CODE GOES WITH ME TO THE GRAVE"
This is my favorite section where everyone just talks about how much they enjoy coding in Fennel. I can't include everything because I'd be here all day but:
Keep up the great work!
wonderful little lisp, thank you so much for developing it!
Fennel is a delightful language, and the (limited) community interactions I've had have been positive. Thanks to all the maintainers and contributors for their work :)
fennel is awesome and the community is even awesomer!
I really love fennel, I'm always telling people about it and calling it my favourite language right now.
Thanks for all the work! I don't envy Emacs users anymore :)
It's encouraging to see how much people like it, so thanks for your support and thanks for continuing to make the Fennel community a pleasure to be a part of.