Live data from Hacker News

Go 2, here we come

blog.golang.org

161–170 of 534 posts

Re: Go 2, here we come

#161
post #81

Go 2 Considered Harmful: https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.p...

I wonder how many people got the joke without reading the link. Good one, boss.

I did because I'm a native speaker of English, am familiar with "goto considered harmful", and I noticed Dijkstra in the link.

Re: Go 2, here we come

#162

Go 2 Considered Harmful: https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.p...

I always appreciate a good joke but unfortunately this has become the top comment as of now and is not adding to the real discussion around Go 2. This is a typical case of when I use my downvote power. Great joke but we should keep HN noise free.

Re: Go 2, here we come

#163

Earlier quoted context omitted.

If $GOPATH was your biggest complaint, now may be a good time to give it another look. As of 1.11, there's an experimental feature called go modules that lets you avoid using GOPATH. I believe it's going to be non-experimental starting in 1.12.

> there's an experimental feature That's not a feature but a fix for a design problem, and currently the only fix is an experimental one. For those seeking to invest their time learning a professional tool, that's a whole pile of no-nos that naturally point to a very hard pass.

"All that is excessive is insignificant.", said Talleyrand.

By your standards c and c++ are not professional tools.

Re: Go 2, here we come

#164
post #71
post #64

Earlier quoted context omitted.

Both are fundamentally different, neither is "better". They are both good at slightly different things. If your desire is to accept bytes over the network and spit back bytes over network Go is going to be a pretty solid choice because that was very much the focus of it's design. However if you want to build an application for a hard realtime environment and you either lack the space for runtime or can't handle GC pa…

My rule of thumb is use Go by default, but if it makes sense to trade a lot of developer time for extreme performance or extreme type safety, use Rust. As with all rules of thumb, there's a lot more nuance than this, but I think it captures the big idea well enough.

I disagree that using rust means trading a lot of developer time. I'm as comfortable with rust as I am go, and I develop equally fast in either language. I would even say faster in Rust because of the type system.

Re: Go 2, here we come

#165

Earlier quoted context omitted.

I would love to completely avoid it, and I do when I can, but it has started to creep into every job out there now and especially in areas I spend a lot of time. So just avoiding it is not possible. I maintain it has been shoved down the industries throat for no good reason other than Google. It does nothing better than any of the existing mainstream languages and in many cases is a large step backwards. So no, I wil…

I don't like Go either, but I'm making my entire product on it. The reason is that I need multiple services, with a small memory foot print, which compiles to binary, all of which runs for web with either HTML or REST. As far as I can see there is no alternative. Java, which I've used for 15 years, requires a JVM, the currenct Alpine Docker for Java only go to 8, and require too much memory. Dlang looks interesting,…

In those 15 years never learned about Java AOT compilers to native code?

Re: Go 2, here we come

#166
post #132

I smell the second coming of the Python 3 fiasco.

I'd be surprised if something similar to python 2/3 happens. The go team have been very explicit in saying that all go 1 code must continue to compile, and transitioning to go 2 needs to be as seamless as possible (most likely using tooling to automatically migrate code across, a la go fix from the early days).

Google had Guido working there for a very long time; there's probably a lot of institutional memory built up around the 2->3 transition, and likely a lot of lessons learned, and a strong desire not to repeat the experience.

Re: Go 2, here we come

#167

As a newcomer to Go, by an immensely wide margin, the hardest, most frustrating thing, which soured the language for me, is whatever the heck package management is in Go. There's like three or four different angles, all of which overlap. Some are official. Some aren't. The unofficial ones seem more popular. They're all kind of incomplete in different ways. And it was all such a frustrating migraine to try and figure…

Having used the new Go module system (introduced in Go 1.11 as an option, to be the default choice in 1.12) since August, it's my opinion that this is now a solved problem.

The biggest source of pain moving forward is going to be the projects that haven't transitioned, including the various command-line tools that work on parsing, generating and manipulating Go code (e.g. linters, code generators). Most of the important ones are already there, and I've transitioned several myself.

As an added bonus, word is that the Go team wants an official package repository system (similar to Cargo, RubyGems etc.). I wouldn't be surprised if this happens rather quickly.

Re: Go 2, here we come

#168

Go 2 Considered Harmful: https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.p...

I always appreciate a good joke but unfortunately this has become the top comment as of now and is not adding to the real discussion around Go 2. This is a typical case of when I use my downvote power. Great joke but we should keep HN noise free.

Is it really so harmful to have it at the top of the comment thread? I think HN can be focused mainly on serious discourse without being completely humorless.

Re: Go 2, here we come

#169
post #84

Earlier quoted context omitted.

Well of course you get used to it, like you did get used to C++ (unless you were born that way which I doubt). It just takes time, you don't want to spend that time getting used to Go and that's perfectly understandable.

"you'll get used to it" is a bad measure of usability.

But so is "I am already used to it," and so how do you find an objective, non-biased, measure of what is usable?

Re: Go 2, here we come

#170
post #165

Earlier quoted context omitted.

I don't like Go either, but I'm making my entire product on it. The reason is that I need multiple services, with a small memory foot print, which compiles to binary, all of which runs for web with either HTML or REST. As far as I can see there is no alternative. Java, which I've used for 15 years, requires a JVM, the currenct Alpine Docker for Java only go to 8, and require too much memory. Dlang looks interesting,…

In those 15 years never learned about Java AOT compilers to native code?

I never fully trusted it. Relatively recent posts show that the GraalVM crashes. While it would be nice to use something like this, I have to go to war with the army I have. That means using the Go troops. Perhaps the Java regiment will be useful in the future, but right now it's still learning to navigate the new terrain of native execution.

I wanted something that stayed close to the main community. I've never heard of people having much success with Maven.

https://www.infoworld.com/article/3192105/java/java-9s-aot-c...

Post reply on HN