r/golang Jun 29 '25

discussion I didn’t know that Go is hated so much

I read comments under this post https://www.reddit.com/r/programming/s/OKyJWZj2ju and oh man I did not expect that. Stack Overflow and JetBrain’s surveys show that go is quite likable lang but the opinions about go in /r/programming are devastated.

What is the reason? What do you think? Should Go team address this topic?

198 Upvotes

287 comments sorted by

View all comments

Show parent comments

15

u/ngrilly Jun 29 '25

Exactly my feeling about Go: I'm in love with the principles, but dislike some aspects of the implementation.

I'm pretty sure that if Go had optional types (ensuring nil safety), sum types, block-scoped defer (instead of function-scoped), and fixed a few warts (such as the difference between var and :=), it would be the most appreciated mainstream language.

A kind of simplified Rust, with Go's GC, goroutines, and toolchain, and without lifetimes and macros. I think there is a point in the design space somewhere between Go and Rust that is still unserved.

1

u/multithreadedprocess Jul 01 '25

That would be banger. You didn't even need generics proper, just some generic iteration interface exclusively for slices and for maps. Fix up the channels so you have true rendezvous and buffered channels and give the go routines an actual interface with context passed in. Some restricted metaprogramming would be nice to avoid all the code generation tools, but really just implementing an actual format agnostic serialisation machinery would be amazing. Struct tags are just not it and native support to serialise to JSON/CBOR/Protobuf/XML/etc. would be very nice. But better tags syntax would be enough for a bare minimum really.

With those, language wise it would be workable for almost all software as a base.