3 ms·
> Go didn’t get everything right, but I’m happy it’s not Java. Go has benefitted immensely from not starting out looking like Java from day 1 But it actually
by throw_m239339 6y ago
> Go didn’t get everything right, but I’m happy it’s not Java.
Go has benefitted immensely from not starting out looking like Java from day 1
But it actually kind of did when it comes to generics.
> Go didn’t get everything right, but I’m happy it’s not Java.
Well a good thing generics are on their way then?
- throwaway894345 6y agoThe comparison was between Go and Java circa 2012 when ago was first released. Not between 2012 Go and 1995 Java. Notably, Go has things like closures and implicit interfaces which make it much easier to write more abstract code than pre-generics Java (which depended heavily on downcasting). I’m not sure if generics will be a net benefit to Go. I often wish I had them, but I rarely need them to make code type safe. Further, I don’t think Go will be able to retain its property that solutions implemented in ago tend to be flat-footed/boring/not-overly-abstract nor the property that different developers tend to approach similar problems in very similar ways (I.e., Go tends to be written in very standard ways). Of course, if you’ve never used Go for a considerable time, you will likely devalue these properties, but they turn out to be really useful, especially in a collaborative setting. Maybe they won’t be lost when generics arrive, or maybe generics will be a net positive. I hope so, but I’m concerned. I think Go is quite a lot nicer to read and write than other languages with generics, and I would be sad if it backslid.