3 ms·
Go's biggest strengths for me around the tools and ecosystem, and code readability. I very rarely find myself wanting generic code, and when I do using empty in
by pbnjay 11y ago
Go's biggest strengths for me around the tools and ecosystem, and code readability. I very rarely find myself wanting generic code, and when I do using empty interfaces make the code difficult to read.
I don't want to start an imperative-vs-functional war or anything, but I've noticed many of the people complaining about Go seem to be functional programming aficionados. Is this because of how much they like embedding and abstractions, or is it because they're trying to put the square Go peg into the round FP hole?
- dradtke 11y agoThe things I tend to miss most in Go are the functional operations, so I'm inclinced to agree. On the flipside, when I'm programming in Rust or Haskell, I can spend a couple hours optimizing a particular expression until it feels "right", which sometimes never happens. It's incredibly fun, but it's not as much of a problem in Go, since it's not as fun to tweak.
- TuringTest 11y agoI believe the imperative-vs-functional war is coming to an end. Now that structures based on Category Theory (generic types, lambdas, monads, futures/promises...) are being adopted by most mainstream programming languages, side effects can be described in a declarative way that is thread-safe and thus amenable to parallelism, will still allowing developers to write in a mostly imperative style. It's a rare instance where we can really get the best of both worlds. I'm optimist about future developments of PLs.
- scribu 11y ago> I very rarely find myself wanting generic code, and when I do using empty interfaces make the code difficult to read. But is that unreadability due to the nature of generic code, or due to the empty interface hack that Go forces you to use?