8 ms·
I am disappointed every time I see a new Go release and go to check the release notes. The language is still lacking features like generics, sane concurrency pr
by quantumwoke 8y ago
I am disappointed every time I see a new Go release and go to check the release notes. The language is still lacking features like generics, sane concurrency primitives and even performance in some cases. Of course the WebAssembly port in 1.11 is an impressive feat of engineering, but I can't see myself replacing core components at my company with Go yet. Fingers crossed.
- ancarda 8y ago>sane concurrency primitives Could you elaborate on this? Are you perhaps talking about STM? I can't think of anything else that is really missing.
- mseepgood 8y agoIf you check each Go release notes for generics you're doing it wrong. If generics will come one day you will have heard about it long before any release notes.
- claydavisss 8y agoLiterally years before.
- pjmlp 8y agoIf you think Go will ever get generics you are fooling yourself.
- kxukfoldld 8y agoGoogle too hard these days? https://github.com/golang/go/issues/15292 https://github.com/golang/go/issues/15292
- pjmlp 8y ago"Issue opened two years ago". Visible work done on generics, beyond go generate, zero. Unless you also want to teach me how to check Go's source code for the pull request related to that issue. Until then it is all just smoke and mirrors.
- PopsiclePete 8y agoThere is no work done by anyone on the core Go team on generics, you are correct. An open github issue means diddly squat. It's tagged as "language change" and "Go 2". There is no Go 2 being planned/worked on - it's just a bucket of thoughts.
- Vendan 8y ago> The intent is not to add generics to Go at this time, but rather to show people what a complete proposal would look like. Yeah, that's there specifically to be pointed to for all the people that say "generics would be easy to add to the language, just do it"
- PopsiclePete 8y agoThe Go team's stance on generics, summarized: For us to consider generics, show us an implementation, that: 1. Doesn't hurt compile times too much. 2. Doesn't bloat the binary too much. 3. Doesn't hurt run-time performance too much. 4. Doesn't fundamentally change the language syntax too much. 5. Doesn't complicate the type system too much. 6. (My personal fav) - Plays nicely with Go interfaces. (Seriously, good luck with that one!) Show us that and no problem - you'll get generics! Now before you go off and waste months doing that, realize that it's them basically politely telling the community to piss off with these generics proposals. But they're free to write comments in a dozen or so Github issues if it makes them feel better, why not. If you've been following the language since 2010 or so, like I have, you'd know by now that roughly 4 well-thought generics proposals have been shot down by the core team. Programmers are really horrible with emotional intelligence and reading between the lines, it seems.
- endorphone 8y agoIt sounds like other languages fill your needs better. That's okay, different languages target different philosophies and needs.
- cy_hauser 8y agoWhich ones? Need compile to executable, no separate runtime/fat jar, non-system language (C, C++, D, Rust, etc.) with garbage collection and is production ready (not pre 1.0).
- carwyn 8y agoGenerics are very unlikely to happen before Go 2 https://dave.cheney.net/2017/07/22/should-go-2-0-support-generics https://dave.cheney.net/2017/07/22/should-go-2-0-support-gen...