3 ms·
Other comments have claimed that Go is intended for teams, but my personal experience shows that Go code is easier to maintain than Haskell code, even for a sin
by idoubtit 6y ago
Other comments have claimed that Go is intended for teams, but my personal experience shows that Go code is easier to maintain than Haskell code, even for a single developer. Though I've coded with Haskell for many years, I never reached an expert level. So, when I went back to an application after 6 month of break, my Haskell skills were rusty, and I struggled to understand what I had written. What's that pragma `MultiParamTypeClasses, TypeFamilies`? What does `<*>` mean in that context? And so on. A similar break happened last year, and I still had a hard time getting back to fluent Haskell, while modifying my Go code was still easy.
Still, I agree with some of the bad points. Like him, I would have liked more types with a stricter compiler that helps refactoring (sum types, zero values).
The official documentation of the language is also very disappointing, as noted by Eric S. Raymond in his conversion notes[^1] from Python to Go.
The author of this blog post criticizes the tooling for the lacks of features that in fact do exist[^2], but are hard to find due to the poor documentation (split over a a shallow "tour of Go", blogs, other official docs, with no links between them).
[^1]: https://gitlab.com/esr/reposurgeon/blob/master/GoNotes.adoc https://gitlab.com/esr/reposurgeon/blob/master/GoNotes.adoc
[^2]: https://golang.org/pkg/runtime/trace/ https://golang.org/pkg/runtime/trace/
- mhh__ 6y agoI think comparing Go to Haskell at all is slightly bizarre, really. When I think Haskell, enterprise maintainability coding isn't exactly what comes to mind. I really don't like Go, but I won't deny that it basically does what it's supposed to do.
- codygman 6y ago> When I think Haskell, enterprise maintainability coding isn't exactly what comes to mind. One day hopefully