3 ms·
That's a very good point. To add: stability and simplicity are choices. Compare Lua to JS for example which started out similarly but Lua was kept simple and st
by dgb23 5y ago
That's a very good point. To add: stability and simplicity are choices. Compare Lua to JS for example which started out similarly but Lua was kept simple and stable, while JS introduced massive churn and tooling complexity, much of it being unnecessary in my eyes.
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.
- b3morales 5y ago> Other languages that optimize for stability and simplicity are Clojure and Go. If you have not tried Elixir I would say it also has these qualities. (In its own way.) It is very pleasant to use.
- vosper 5y ago> Compare Lua to JS for example which started out similarly but Lua was kept simple and stable, while JS introduced massive churn and tooling complexity, much of it being unnecessary in my eyes. 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.
- a4isms 5y agoFor a solo developer, you can opt not to use any of the new features of JS. 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.
- dgb23 5y agoYou’re right, the comparison is a bit unfair. 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.
- lenkite 5y ago> To add: stability and simplicity are choices. I thought Lua constantly broke compatibility between releases. Several posts about this on HN
- dgb23 5y agoThank you for pointing this out. I haven’t touched Lua since a decade and assumed it stayed simple and stable as GP was implying. But the general point and the other examples are still valid IMO.