<story><title>Golang generics proposal has been accepted</title><url>https://github.com/golang/go/issues/43651#issuecomment-776944155</url></story><parent_chain></parent_chain><comment><author>dcolkitt</author><text>IMO the biggest factors for the success of Go are 1) super-fast compile times, 2) easy to interpret compiler errors, and 3) dead simple shipment of high performance, native static binaries.&lt;p&gt;I think Go has succeeded, despite, not because of the language itself. One very big limitation being the lack of generics or any sort of ability to leverage higher-order types. Sometimes making a small modification to a large codebase can require a huge footprint of lines modified, just because so much code winds up duplicated in slightly different contexts.&lt;p&gt;That being said, I really hope that Go&amp;#x27;s core team understands the drivers of its popularity and doesn&amp;#x27;t compromise the operational side for the sake of language improvements. Although higher-typed languages have no trouble achieving good runtime performance, it seems like there&amp;#x27;s a fundamental tradeoff at compile time. Scala, Haskell, even Typescript have painful compile times. I don&amp;#x27;t know if there&amp;#x27;s any theoretical reason for it to hold, but more typing complexity inevitably leads to slow compile times.&lt;p&gt;And as for the topic of clear error messages, the higher-typed languages are all atrocious at this. Even templates in C++ are notorious for puking near impossible to decipher errors. This is something I&amp;#x27;m sure can be fixed with enough engineering effort, but it would probably take &lt;i&gt;a lot&lt;/i&gt; of effort to get there.&lt;p&gt;In general, I bitch about the Go language all the time. But I think we should recognize that the simplicity of the language gives us developers a lot of peripheral really nice usability benefits.</text></comment>
<story><title>Golang generics proposal has been accepted</title><url>https://github.com/golang/go/issues/43651#issuecomment-776944155</url></story><parent_chain></parent_chain><comment><author>smasher164</author><text>This is a significant milestone for Go, and I&amp;#x27;m extremely happy for the community. I didn&amp;#x27;t imagine getting here when I first started using the language, and yet here we are.&lt;p&gt;Special props to Ian Lance Taylor and Robert Griesemer for their continued revisions of drafts, and exemplary discussion with the community in implementing feedback.</text></comment>