That kind of thing also has a lot of value when you only want to write something once.
That kind of thing also has a lot of value when you only want to write something once.
Being an ANSI standard with multiple cooperative implementations, it's unlikely to change any time soon.
I don't use Lua anymore but it has a special place in my heart. I started learning it to use Love2d and then got my first job as a developer out of sheer luck (someone I knew saw a demo of the game I was working on).
Back then, I didn't understand why it is important that Lua is how it is. I just thought it was to make it more accessible, and while that is certainly a consideration, I think the bigger value proposition is trust and the ability to keep the whole language in one's head with very minimal effort.
Other languages that optimize for stability and simplicity are Clojure and Go. Their respective ideas of simplicity are different but have some overlap. Both languages are very attractive and deeply relaxing.
Anything you wrote in JS twenty years ago probably still works. Tooling has changed, but none of that's an official part of the JS language. The language has only some added features that you can opt to not use.
If you're comparing the whole JS ecosystem to the Lua and Fennel languages, well that's not really a fair comparison.
But if you are working in industry and do some front-end programming… You are going to work with the features that other people around you have decided makes their life easier.
It is possible to work with like-minded souls that want to keep JS simple, but it certainly isn’t a given.
And there are examples in the JS ecosystem that prove me wrong to some extent like htmx, which is a small, simple library written in a straight forward style.
But it’s not entirely unfair either. Reading code is an important part of programming. Integration with libraries often too. You can’t just isolate yourself from churn that easily when everyone else doesn’t. Breaking changes, versioning issues, deprecation etc. happen regardless.
I thought Lua constantly broke compatibility between releases. Several posts about this on HN
If you have not tried Elixir I would say it also has these qualities. (In its own way.) It is very pleasant to use.