Go 1.27 Interactive Tour(victoriametrics.com)
248 points by Hixon10 10 hours ago | 101 comments
tl;dr: Go 1.27's headline feature is generic methods, allowing methods to declare their own type parameters independent of the receiver (though interfaces still can't declare them). Other notable additions include a standard `uuid` package, `encoding/json/v2` graduating from experimental status and now backing v1, post-quantum ML-DSA signatures, an experimental portable `simd` package, struct literals accepting promoted field keys, and generalized function type inference. Performance gains come from size-specialized memory allocation and three new compiler optimizations, while HTTP/2 finally moves out of its 12k-line bundled file into a proper internal package.
HN Discussion:
  • ~Go's generics syntax is too complex and hard to read, adding unwelcome cognitive weight
  • ~Go generics still lacks features like Java's wildcard (<?>) for type-agnostic operations
  • ~Subtle behavior changes like auto-draining HTTP response bodies could break existing code
  • Appreciation for specific improvements like MTE compatibility, simd, and the strong standard library
  • Questioning implementation feasibility of type-parameterized methods on interfaces