Go 語言之父:不要在 Go 1.18 標準庫中使用泛型

2021-10-17 11:00:10

Go 語言之父 Rob Pike 近日在 Go 程式碼倉庫提交了一個 issue (),建議不要改動 Go 1.18 中的標準庫,不要在 1.18 的標準庫中使用泛型。

Rob 指出,在標準庫中使用泛型需要深思熟慮和規劃。如果現在就將泛型應用到標準庫,那麼會為釋出版本增加很大的負擔。因此他建議不要更新 Go 1.18 的標準庫。

對此,Rob 給出的理由是,如果在 1.18 版本中就更新標準庫,那麼團隊的工作量會非常大,很容易導致出錯。泛型是 Go 誕生以來最大的一次語言變化,但 Go 核心開發團隊也沒有使用新泛型的經驗,無法為標準庫的更新提供有力的案例。

另外,他們還承諾過要保證 Go 1 的全系列相容性,因此試錯成本也非常高。Rob 建議團隊應該繼續等待、觀察和學習。

Rob 表示,關於標準庫的試驗會在 golang/x/exp 倉庫中進行,只有通過測試才會進入主倉庫。

最後,Rob 說道:「我知道每個人都想體驗新語言特性的樂趣,並期待修復核心庫中的一些問題,但我堅信現在最好慢慢地穩步前進,謹慎使用、學習、研究和推進。」

展開閱讀全文