Go 1.18 がリリースされた
既に Gopher たちの間では話題沸騰ですが(笑), Go 1.18 がリリースされました。
- Go 1.18 is released
- Go 1.18 is released! - The Go Programming Language
- Go 1.18 Release Notes - The Go Programming Language
ブログ記事を参考にポイントを紹介すると
- Generics
- Fuzzing
- Workspaces
- 20% Performance Improvements
といったところか。 個人的には workspace mode についてはちゃんと調べて使えるようにしたいと考えている。
Go modules have been almost universally adopted, and Go users have reported very high satisfaction scores in our annual surveys. In our 2021 user survey, the most common challenge users identified with modules was working across multiple modules. In Go 1.18, we’ve addressed this with a new Go workspace mode, which makes it simple to work with multiple modules.
Generics は自分では積極的に使おうという気は起きないので,他の人のパッケージに含まれていればお世話になる感じかなぁ。 とりあえず,この辺はいじってみたい。
例によって Ubuntu の APT で管理している Go コンパイラは古いので,ダウンロードページからバイナリ(go1.18.linux-amd64.tar.gz
)を取ってきてインストールすることを強く推奨する。
以下は完全手動での作業例。
$ cd /usr/local/src
$ sudo curl -L "https://go.dev/dl/go1.18.linux-amd64.tar.gz" -O
$ cd ..
$ sudo unlink go # 以前の Go が入っている場合
$ sudo tar xvf src/go1.18.linux-amd64.tar.gz
$ sudo mv go go1.18
$ sudo ln -s go1.18 go
$ go version # /usr/local/go/bin にパスが通っている場合
go version go1.18 linux/amd64
アップデートは計画的に。
ブックマーク
- Big Sky :: Go の http パッケージに MaxBytesHandler が入った。
- go1.18で入ったhttp.MaxBytesHandlerの中身を見てみた
- Go1.18から導入されるnetip package/netip-package - Speaker Deck
- What’s new in Go 1.18? - Speaker Deck
- What Is the Go Workspace Mode - Speaker Deck
- [shared] 20220218 Go 1.18 Fuzzing - Google スライド
- Go 1.18で追加されるstrings/bytes.Cutとsync.Mutex.TryLockについて - Google スライド
- Go言語のジェネリクス入門(1)
- strings.Cut と strings.SplitN はどっちが速いか
- Big Sky :: text/template と html/template に continue/break が入った。
- Go言語がGenericsを導入、過去最大の変更となる「Go 1.18」正式版リリース - Publickey
- Go 1.18で導入されたnet/netip package
- Go1.18からのWorkspace modeをさっそく使ってみた
参考図書
- プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)
- Alan A.A. Donovan (著), Brian W. Kernighan (著), 柴田 芳樹 (翻訳)
- 丸善出版 2016-06-20
- 単行本(ソフトカバー)
- 4621300253 (ASIN), 9784621300251 (EAN), 4621300253 (ISBN), 9784621300251 (ISBN)
- 評価
著者のひとりは(あの「バイブル」とも呼ばれる)通称 “K&R” の K のほうである。この本は Go 言語の教科書と言ってもいいだろう。