Earlier quoted context omitted.
I totally agree. After working with it for a while I feel like its best use is in writing CLI tools due to the compiler making it so damn easy to produce statically linked binaries for any platform, backed by an incredibly powerful standard library. My issue for application and web server development are in the language design as it restricts me in my personal quest to write loosely coupled code that is marinated in…
"You can accept a struct where an interface is a parameter but you cannot return a struct where an interface is the return type." Possibly I'm misunderstanding the complaint, but that is because an interface is a fat pointer, so one returns a pointer to a struct implementing the interface. https://go.dev/play/p/YOa6NF7rjPF
It's because an interface is structurally evaluated only on variable assignment, but it's not always structurally evaluated which limits its usefulness