@wu_lee yes mostly because of interfaces and type safety, also an easy to use concurrency model.
it's true that go doesn't provide as much type safety as some languages, but it provides the right amount to me; i think it gets a bad rap because of the lack of generics, and people defeat the type system because of it. but: i just don't do that. (still, i would love to see generics added to the language.)
in total though, writing and refactoring go is a delightful experience.
I flirted with Go as a C/C++ replacement. Was discouraged because it allegedly leaks memory on 32 bit CPUs, with no plans of that being fixed. (I had 32bit ARM in mind).
And possibly Go felt a bit longwinded for my taste.
Rust looks promising in terms of a C killer - although about as complicated as C++.
My big hope of a general purpose C/C++/Python replacement is still Nim. Not had much chance of testing it out however.
But I see Go used in interesting places.
@wu_lee ah; i haven't heard about the memory leaking but for what it's worth i have code that runs on a 32-bit ARM for months without trouble. do you have a link on that?
it's definitely a bit verbose, but i think it strikes a good balance: it's convenient without too much syntax, a nice small language.
rust is an amazing language! but it's more low level than what I typically need; granted I use go mostly as a Node.js replacement: i write lots of network servers, and it's a great fit for it.
@wu_lee interesting; yeah i've not experienced this, but will def read up on it further. would be surprised if it's still outstanding, since 32-bit arm seems like a common target.
A Fediverse instance for people interested in cooperative and collective projects.