news.volyx.in

Go 1.18 (go.dev)

773 points by mjlee · 1644 days ago · 597 comments on HN

Article summary

The Go team has released Go 1.18, which includes new features such as generics, fuzzing, and workspaces. Generics allow for generic code using parameterized types, while fuzzing is a testing technique that provides fully integrated support into the standard toolchain. The release also includes CPU performance improvements of up to 20% for certain architectures. The Go team is thrilled to deliver these features, which have been in design for a long time.

Main themes

  • Go 1.18 release
  • Generics and fuzzing
  • Language design and trade-offs
  • Community attitude and criticism
  • Feature adoption and perception
  • Programming language preferences

What commenters say

  • Some developers believe that generics will make their code more readable and maintainable, while others think it will make their code harder to read.
  • The lack of certain features, such as sum types, may be the next point of contention for Go critics.
  • Some argue that the need for certain features is subjective and dependent on personal preference and use case.
  • Others believe that the Go community's attitude towards critics can be condescending and unhelpful.
  • The usefulness of generics is debated, with some seeing it as a necessary feature and others as a nice-to-have.
  • The Go language's design and trade-offs are defended by some as intentional choices that prioritize simplicity and readability.
  • Critics argue that the language's limitations can lead to frustration and unnecessary workarounds.
  • The importance of community attitude and openness to criticism is highlighted as a key factor in the adoption and perception of the Go language.