top | item 16414732

(no title)

camus2 | 8 years ago

> It really is striking to me that it is so popular to dislike Go on HN. A lot of people seem to have to voice their dislike for it instead of just not using the language.

It's normal. After the initial hype 3/4 years ago, developers are taking a harder look at that language and with experience its flaws have become more obvious.

Go type system definitely has problems that aren't addressed by its designers, IMHO limiting its adoption.

> A lot of people seem to have to voice their dislike for it instead of just not using the language.

One can use a language daily while still remaining critical of it. People who don't use Go don't care about Go. Only people using Go will complain about its shortcomings.

A lot of Go issues have actually been addressed in previous languages such as Ada. Ada tasks for instance are close to go-routines and they use the same "select" system to deal with concurrent messages. However, Ada tasks unlike go-routines are "objects" that can be referenced as variable, they also can scheduled by the developer.

There is not a single language out there free of criticism, Go isn't different. So it shouldn't really be striking at all.

discuss

order

petre|8 years ago

> Go type system definitely has problems that aren't addressed by its designers

Wouldn't that break the promise of backwards compatibility that they made with major versions? They could probably do that in Go 2.

Personally, I think D is a more mature language, design wise, although it's a bit lacking in terms of libraries compared to Go and the tooling is, also lacking compared to Rust.