The generics implementation is perfectly fine. The fact that you completely dodged my question is telling. But please, keep living in your alternate reality.
I did not dodge the question at all, you just didn't like the answer.
"Market pressure for language adoption".
Just like all the features they keep adding where they said that Go doesn't need them in first place, turns out those features exist in other programming languages for a reason.
This idea that they just caved and added them due to pressure is a false narrative invented by detractors like yourself. Here is a timeline if you're interested:
In retrospect, we were biased too much by experience with C++ without concepts and Java generics. We would have been well-served to spend more time with CLU and C++ concepts earlier.
think the transition to getting polymorphism into the language through generics is has still got some years to work through there's still things that don't quite work right
If they didn't want to add generics, why were they actively working on generics proposals and designs since the inception of the language? Was it a hedge against the potential of being pressured into adding them in the future?
The survey started in 2016. But even if it didn't, that still wouldn't make a difference. You're clearly not a serious person, so I think I'm done responding.
Seriousness is a hard topic among Gophers, what today does not matter, is apparently quite relevant tomorrow, and generics aren't the only example where this kind of pivots take place.
Comments
The generics implementation is perfectly fine. The fact that you completely dodged my question is telling. But please, keep living in your alternate reality.
I did not dodge the question at all, you just didn't like the answer.
"Market pressure for language adoption".
Just like all the features they keep adding where they said that Go doesn't need them in first place, turns out those features exist in other programming languages for a reason.
This idea that they just caved and added them due to pressure is a false narrative invented by detractors like yourself. Here is a timeline if you're interested:
2009 Go released.
June 2010 https://github.com/golang/proposal/blob/master/design/15292/...
Jan 2011 https://github.com/golang/proposal/blob/master/design/15292-...
March 2011 https://github.com/golang/proposal/blob/master/design/15292/...
Oct 2013 https://github.com/golang/proposal/blob/master/design/15292/...
Dec 2013 https://github.com/golang/proposal/blob/master/design/15292/...
April 2016 https://github.com/golang/go/issues/15292
Aug 2018 https://github.com/golang/proposal/blob/master/design/go2dra...
Aug 2018 https://github.com/golang/proposal/blob/master/design/go2dra...
June 2020 https://go.dev/blog/generics-next-step
Jan 2021 https://github.com/golang/go/issues/43651
Jan 2021 https://github.com/golang/proposal/blob/master/design/43651-...
Feb 2021 Proposal accepted.
March 2022 Ships in Go 1.18.
You could criticize Go for moving too slow. But I'm pretty happy with the way they landed. They definitely don't feel bolted-on.
Ah the usual barrage of links from Go folks, luckily we have also come prepared.
https://blog.golang.org/why-generics
https://github.com/golang/proposal/blob/master/design/go2dra...
And naturally Rob Pike's pearl,
https://youtu.be/yE5Tpp2BSGw?t=2134
If they didn't want to add generics, why were they actively working on generics proposals and designs since the inception of the language? Was it a hedge against the potential of being pressured into adding them in the future?
Go survey results....
The survey started in 2016. But even if it didn't, that still wouldn't make a difference. You're clearly not a serious person, so I think I'm done responding.
Market pressure does wonders.
Seriousness is a hard topic among Gophers, what today does not matter, is apparently quite relevant tomorrow, and generics aren't the only example where this kind of pivots take place.
So whatever.