Having a 1.0 release within the decade would be nice, but I absolutely hope it does not happen before major adoption, otherwise we might freeze mistakes. Zig is used in production, today, and by now there is definitely a stable vision.
A risk might still that then great Io / async design does not work out, although I personally think it’s looking good.
I currently treat zig like I probably would treat a framework in a different language, and update to the new release when something breaks.
If you want to write code once and never touch it again (implies not using 3rd party code IMHO)
Zig is not the language for you, but if the software ist evolving or uses evolving dependencies I don’t care updating my code, hopefully cleaning up while doing it.
You should see Zig as a research project.
Sure, if concepts are done right, they will become automatically stable. That means, that the core concept and core idea of Zig is already stable. But more advanced topics and concepts are still moving.
The bravery, to be that long unstable for a language, which wants to be successful in the end, is incredible. It’s a very small team which is developing the language and toolchain and the pressure is probably pretty high, but what they have accomplished so far, is incredible, because there are already companies out there, which are willing enough to put their money into an unstable language.
Let’s see what the next 5 years will bring…
Re: LLM not being up to date with the zig version you’re using. Here’s what I do - every time you use the LLM to fix something… ask the LLM to add it to your zig-v#-cheatsheet.md, then put the cheat sheet into context while you do assisted coding. You really don’t need to do manual fixes after that for the breaking changes. Main ones I always run into are io reader/writer and array init syntax in 0.15.1/2.
Fair enough. I mean, if it works for you and you can able to understand what and why it changes the code in a certain way and as long as you can learn something with it, it is perfectly fine.
I still prefer to use LLM for researches only though, as I don’t feel comfortable to off load my coding skills at the time I am still learning things with this language.