Live data from Hacker News

Go 1.6 is Released

blog.golang.org

251–260 of 367 posts

Re: Go 1.6 is Released

#251
post #5

Go checks a lot of boxes for my ideal language for developing web services: Static type, C derived, has garbage collection, generates a single binary, supports concurrency very well, is opinionated, is small/simple, its community prefers to just use standard lib for most work, etc. Yes, Generics is an issue and so is debugging. But, overall, I can't think of many other options that check so many boxes. EDIT: I must h…

Golang is my favorite. Started on 2010 and use it without hesitation.

Re: Go 1.6 is Released

#252
post #100

Earlier quoted context omitted.

"Take interfaces. In Java you might start with them. In Go - in the best case - they emerge, when it's time for them." And it's a relatively subtle language feature that does this, the way that any struct that implements a given interface automatically conforms to that interface without having to be declared. Which means you can declare an interface that foreign packages already conform to, and then freely use them.…

There is a big downside to structural typing as golang implements it though. Refactoring tools. They quite simply cannot do the same kinds of safe refactoring something like a Java refactoring tool can do, because you can't be sure if the function you are trying to rename, add parameter too, etc. is actually the same function in question. There are times when I love the structural typing aspects of golang (trivial de…

I believe you can do renames with the oracle tool

Re: Go 1.6 is Released

#253
post #5

Go checks a lot of boxes for my ideal language for developing web services: Static type, C derived, has garbage collection, generates a single binary, supports concurrency very well, is opinionated, is small/simple, its community prefers to just use standard lib for most work, etc. Yes, Generics is an issue and so is debugging. But, overall, I can't think of many other options that check so many boxes. EDIT: I must h…

Java SE and a fat jar... checks all the boxes and has generics and superior tooling. I still don't get the Go love.

You don't have too.

Re: Go 1.6 is Released

#254

Earlier quoted context omitted.

> The mental image of a huge ram sucking IDE with code completion for frameworks is simply incompatible with > what I would consider the ideal creative process for me as programmer. Java has long been my primary professional language, and over the past few years Go has taken on a strong secondary niche at my job. I'm big fan of both, and tend to play Switzerland in arguments between them. That being said, the best Go…

(4) Use LiteIDE, simple IDE written for Go.

The best ide for golang. It is not Netbeans or Eclipse but

it is lightweight, enough features and gets the job done.

Re: Go 1.6 is Released

#255
post #249
post #47

Earlier quoted context omitted.

Green threads are awkward to express with the JVM threading/memory/io model. The runtime is massive (contrasting to the go model of statically linking deployment binaries). Some semantics (such as unsigned 64-bit integers) are difficult to express. Java's JNI is a PITA. I don't believe go's c bindings are much better, but the JVM definitely has its sore points. Finally, the object-oriented nature of the JVM is someti…

Actually JNA is actually way better than Go or JNI. And if you are looking at Kotlin / Scala you won't find yourself inside the object-oriented pain. The JVM is actually not that bad.

I agree with you. But this code, does not compile

List[] j=new List[10];

and this is a a serious problem. If generics are correctly implemented, then it should compile.

Re: Go 1.6 is Released

#256
post #123
post #14

Earlier quoted context omitted.

Doesn't attempt to please everyone. Case in point: no OOP or inheritance and no FP. Minimal syntactic sugar.

Nitpick - Go is very much an OO language. Almost everything is done using objects. It has a different way of handling inheritance however - it makes a different decision in the "Composition over inheritance" debate. https://en.wikipedia.org/wiki/Composition_over_inheritance

Golang is the best. And this is a really amazing thing.

Golang does Pseudo OO like Motif. The added value is the composition which is amazing.

Re: Go 1.6 is Released

#257
post #5

Go checks a lot of boxes for my ideal language for developing web services: Static type, C derived, has garbage collection, generates a single binary, supports concurrency very well, is opinionated, is small/simple, its community prefers to just use standard lib for most work, etc. Yes, Generics is an issue and so is debugging. But, overall, I can't think of many other options that check so many boxes. EDIT: I must h…

Java SE and a fat jar... checks all the boxes and has generics and superior tooling. I still don't get the Go love.

Setting up a Java ecosystem is an enormous pain in the ass, and the language is anything but simple/minimal.

Much of the Go love comes from doing (almost) everything Java does with a lower cognitive load... and goroutines are really useful, too.

Re: Go 1.6 is Released

#258

I've been writing some gocode recently and huge chunk of code is if err != nil ... I know you can do if ; err!=nil but that not that much better and you end up in deeply nested if blocks. i have to mentally block out err !=nil to read any gocode linearly. How is this acceptable, I don't get it. https://blog.golang.org/errors-are-values We recently scanned all the open source projects we could find and discovered that…

I really like Go, but I have to admit this still irks me. I suppose every language has it's warts, and this is one of them.

Re: Go 1.6 is Released

#259
post #143

Earlier quoted context omitted.

Go programs can link the Qt library, specifically the GUI components, statically? ... it produces one output binary per target OS?

I have not tried Qt with Go to be honest, but in general yes compiled Go code produces a single statically linked binary on the target OS.

[deleted]

Re: Go 1.6 is Released

#260
post #143

Earlier quoted context omitted.

Go programs can link the Qt library, specifically the GUI components, statically? ... it produces one output binary per target OS?

I have not tried Qt with Go to be honest, but in general yes compiled Go code produces a single statically linked binary on the target OS.

You can't currently link to Qt statically though. (And holy smokes, that would be a huge binary if it did, just libQt5Widgets.so links to 49 other libraries, everyting from X11 libs to libbz2 to opengl)
Post reply on HN