Go is still not good
2 days ago
- #Programming
- #GoLang
- #Critique
- Go's error variable scope is unnecessarily broad, making code harder to read and debug.
- Go has two types of nil, leading to confusing behavior and comparisons.
- Go's approach to conditional compilation via comments is criticized for being impractical.
- The `append` function in Go can lead to unexpected behavior due to undefined slice ownership.
- Go's `defer` mechanism is seen as inferior to RAII in other languages, complicating resource management.
- Go's standard library swallows exceptions, forcing programmers to write exception-safe code without proper support.
- Go's handling of non-UTF-8 data is problematic, leading to silent data loss.
- Memory management in Go can be inefficient, with the garbage collector not always behaving predictably.
- The article criticizes Go for ignoring established best practices in language design.