10 ms·
Has there been any announced timeline on Go2?
by totalperspectiv 6y ago
Has there been any announced timeline on Go2?
- throw_m239339 6y agoI know one needs to refrain from being sarcastic here, but LOL. "Go2" is the typical exemple of an idea parking. It is not going to happen.
- mseepgood 6y agoThat's simply not true.
- pjmlp 6y agoIt was true for error handling improvements, which got added is just a small part of the original proposal. And despite the 2nd attempt to the contracts proposal (now one year old with little visible progress, no updates since August on public git), or the Featherweight Go presented last week, there is still no guarantee that any of that will ever land on Go.
- RabbitmqGuy 6y agoAs a person who uses Go i don't need day by day updates to know that the Go team is working hard on generics. I trust that they are & indeed they are. > now one year old with little visible progress, no updates since August on public git. This is untrue. In January this year the Go team wrote[1]; "Module support is in good shape and getting better with each day, and we are also making progress on the generics front (more on that later this year)." If you looked at the draft/experimental[2] branch where generics development has been taking place, you can see that it has had activity as late as just last week. In the featherweightGo presentation, Phil Wadler said Rob Pike wrote to him asking if he would be interested in working with the Go team so that they can figure out generics and try and get them right. And that is how featherweightGo came to be. So a lot has/is been happening. 1. https://blog.golang.org/go1.15-proposals https://blog.golang.org/go1.15-proposals 2. https://go-review.googlesource.com/c/go/+/187317 https://go-review.googlesource.com/c/go/+/187317 3. https://youtu.be/Dq0WFigax_c https://youtu.be/Dq0WFigax_c
- pjmlp 6y agoI stand corrected regarding the git updates. As for the rest, it still has every chance to be shot down at last minute like it happened with the error proposal, regardless of what gets done.
- fooster 6y agoThe error proposal wasn't "shot down at the last minute". That is an entirely unfair and disinguous take on the matter.
- pjmlp 6y agoSo what is the fair way to address the community refusal and consequent introduction of a set of functions that achieve a subset of the initial proposal?
- jatone 6y agothe error proposal was shutdown because the community rejected it due to the try function ergonomics sucking and not providing enough value. the rest of the proposal went through just fine.
- pjmlp 6y agoSo who is to say that generics won't suffer the same fate?
- jatone 6y agocurrent proposal might, but generics provide far more value than the try function from the errors proposal. they won't just stop attempting to figure it out.
- throw_m239339 6y ago> current proposal might, but generics provide far more value than the try function from the errors proposal. they won't just stop attempting to figure it out. It doesn't matter how hard anybody tries when a vocal community rejects any attempt at changing Go type system.
- throw_m239339 6y agoWhat significant syntax or type system change has been implemented in Go for the last 5 years? alias, which was rather minor and a demand from googlers themselves. modules? this isn't a syntax or type system change. There won't be any syntax or type system change ever. Because it should have been done 10 years ago when the language was still new. It is now held hostage by a very conservative community for which no change will be good enough to be justified, that's simply the truth. Look at the facts, you can't deny them.
- _ph_ 6y agoYou are right and wrong at the same time. Go2 isn't a planned release, but stands for a possibly incompatible future revision of Go. A place, where new features can be experimented with. But any feature planned for "Go2", which turns out to not be incompatible with the Go1 compatibility promises, might just be merged into the Go mainline at a new dot release. So it is not clear, that or if when, a "Go2" release is going to happen. On the other side, new features are constantly added to the language from the "Go2" development, so in a sense part of it is already there.
- dsymonds 6y agoYeah, there's been a few plans announced: https://blog.golang.org/go2-here-we-come https://blog.golang.org/go2-here-we-come https://blog.golang.org/go2draft https://blog.golang.org/go2draft https://blog.golang.org/go2-next-steps https://blog.golang.org/go2-next-steps
- whateveracct 6y agoHm maybe I'll just have to write it as a Haskell eDSL. Should be straightforward and you get a better RTS & generics for free.
- HALtheWise 6y agoThe decision at the moment is that while there may be backwards-incompatible language changes, referred to with the go2 label, Go is not planning to ever release a backwards-incompatible compiler. That means code written today will always be able to be imported by and linked against future Go programs, but there may be future language features you can't use without explicitly opting in. The go module system also has a way to declare language version, although it doesn't do anything right now.