4 ms·
> Go did not have generic types at the time so I excluded it immediately I wonder how many people are missing out on Go for a feature they wouldnt miss 80-90%
by leetrout 5y ago
> Go did not have generic types at the time so I excluded it immediately
I wonder how many people are missing out on Go for a feature they wouldnt miss 80-90% of the time?
- WalterBright 5y agoGeneric code is written with D a lot more than I'd originally anticipated.
- leetrout 5y agoOh I dont deny that at all. D is on my list of languages to try precisely because it is more powerful / flexible than Go (and thank you for making it). Just surprises me how quickly people write it off. Horses for courses!
- christophilus 5y agoI’ll be honest. It kept me away from Go for far too long. Now, I really appreciate Go, and hope the new generics implementation doesn’t ruin the culture. I do wish Go had sum types, and that it didn’t have null. Those are my main gripes.
- schveiguy 5y agoThe only way you can be saying this is if you haven't experienced metaprogramming in D. C++ does not compare at all. Generics do not compare at all. You can take D metaprogramming from my cold dead hands.
- leetrout 5y agoIf you were in the authors shoes and you disliked C++ templates would you also have written off Go without trying it, though? No argument on going from D to something else but to not know either and not even try Go is what surprises me.
- GoblinSlayer 5y agoI was puzzled by strange linguistic ideas of go's designers. The reference to the English language can't justify go's syntax.
- leetrout 5y agoDo you have an example top of mind?
- GoblinSlayer 5y agoArray of bytes []byte being English, but byte array byte[] being not English.
- he_the_great 5y agoYeah I do much in C# and almost never use generics. And when I do it is almost always not what I want. D has me fooled and I can't imagine Go choosing to go further in D's direction over C#. I feel sorry for them.
- travv0 5y agoYou almost never use List<T>? Dictionary<TKey, TValue>? IEnumerable<T>?
- he_the_great 5y agoThose don't matter, because while you can't build your own in Go, the built in types provide the same functionality.