3 ms·
>There's a lot of misinformation, bad arguments and bad conclusions in this post. Let's pick it apart. No, there really isn't, but I had fun answering :-) > B
by usrbinbash 3y ago
>There's a lot of misinformation, bad arguments and bad conclusions in this post. Let's pick it apart.
No, there really isn't, but I had fun answering :-)
> But, past isn't a guarantee of the future. It was stable before, but who's to say it will be in the future?
Whos to say C will be stable tomorrow? Well, the fact that things like GCC are standards unto themself, even without any official governance (Which C has in addition). Its the same for Go.
If anyone was to change that, all I have to do is check out an earlier version of this open source language, and use that. And since tons of code rely on this, that is what would happen.
Languages don't become unstable because they suddenly change trajectory. This rarely ever happens. Language instability requiring constant evolvement and developer effort (both from the languages devs, as well as the languages users) is the result of feature upon feature getting heaved upon a language, along with codebases relying on these features, necessitating constant maintenance effort to keep up to date.
Go, explicitly, has a completely different design trajectory. And as a result, Go code that was written in Go 1.8 will still compile today.
> Go has no standard
Here is the official spec of the language: https://go.dev/ref/spec https://go.dev/ref/spec
Which is a de-facto standard, even according to this listing: https://en.wikipedia.org/wiki/Comparison_of_programming_languages https://en.wikipedia.org/wiki/Comparison_of_programming_lang...
Btw. if you look at the listing, MOST languages, including commonly used ones, don't have an international or national standard. Many don't even have a de-facto standard. Among them are many tried and battle tested languages.
> and nobody will hold them responsible for the discrepancy.
Anyone unhappy with the implementation is free to fork the project and take it in a different direction. He who writes the code makes the rules. If people are unhappy with that, they can fork, or use another language. And people seem to be very happy with the language: https://madnight.github.io/githut/#/pull_requests/2023/3 https://madnight.github.io/githut/#/pull_requests/2023/3
> By who? How did you come to this conclusion? There's only evidence to the contrary of your argument.
What evidence is there for the assumption that Go would vanish if Google lost interest?
> This is demonstrably false.
No, it is not, as demonstrated by the example I gave regarding C. The language didn't change much from C99, which itself wasn't that big a step away from ANSI-C. C99 was a quarter century ago, and C remains one of the most used languages in existence.
> To further illustrate this point: today, versions of Python
I am pretty sure I never used Python as an example for this. If you disagree, quote where I did.
> In more broader terms, I have no idea why did you bring C into this argument.
For a very simple reason: To show that a language that is mostly feature-freezed, and so stable that I can run a modern compiler on decades-old unchanged code, and still get a runnable executable, can be, and are, incredibly successful. Go has been called "C for the 21st century", and for everything other than System-Programming, that statement holds true.
- vacuity 3y ago> Go, explicitly, has a completely different design trajectory. And as a result, Go code that was written in Go 1.8 will still compile today. Just saying, Go is far from the only language that values backwards compatibility.
- usrbinbash 3y agoThat's true, but Go's backwards compatibility is a side-effect of another design goal, one that many contemporary languages do not share: Keeping the language small and stable, and actively trying not to add shiny new features. Many languages have pretty good or even excellent backwarsds compatibility. In languages that incude as many features as possible, that quickly becomes a burden that requires it's own fair share of developer attention.
- vacuity 3y agoHm, that's a fair point. I personally don't prefer Go's style, but I'm growing to appreciate that it works for others.
- pjmlp 3y ago> The language didn't change much from C99, which itself wasn't that big a step away from ANSI-C. C99 was a quarter century ago, and C remains one of the most used languages in existence. The library and compiler specific extensions did. Besides, a language that nowadays only matters on UNIX clones and embedded development, naturally doesn't need to keep changing all the time, anyway C23 is around the corner.