
Go 1.27、ジェネリックメソッドや標準uuidパッケージ、耐量子署名を追加
Jesús Espinoによるインタラクティブな「Go 1.27ツアー」では、リリースノートの文章ではなく、実行可能なコード例として18の変更点を紹介している。目玉となるのはジェネリックメソッドだ。メソッドが独自の型パラメータを宣言できるようになったため、要素の型を変更するMapなどをパッケージレベルの関数ではなく、その型自体に定義できるようになった(ただし、インターフェースでの宣言は引き続き不可)。また、標準ライブラリにはuuidパッケージが追加され、JSON v2が実験的機能から正式版へと移行したほか、ML-DSA耐量子署名も導入された。さらに、ゴルーチンリーク検出機能が標準のpprofプロファイルに昇格し、サービス側から /debug/pprof/goroutineleak でスクレイピング可能になっている。
出典: victoriametrics.com ↗
メソッドの宣言は、今やレシーバの型パラメータとは独立して、それ自身の型パラメータを宣言できる。
Go 1.27リリースノート
なぜ重要か
- → Genericメソッドは、型安全な変換を補助関数ではなくコンテナAPIの自然な一部にする。
- → 量子耐性署名 (ML-DSA) は、量子脅威に対し暗号技術を将来にわたって安全にする。
- → Goroutineリーク検出器は、実験段階から本番環境の可観測性ツールへと昇格した。
Goのgenericsが成熟した