go语言最新测试版本Go 1.18 Beta 1发布了,带有泛型
Russ Cox,go团队在
2021年12月14日发布了 Go 1.18 Beta 1,您可以通过访问下载页面来获取。
https://go.dev/dl/#go1.18beta1
官方 Go 1.18 版本将在几个月内发布。
这是 Go 1.18 的第一个预览版,让您踢轮胎,试一试,并告诉我们您遇到的问题。
Go 1.18 Beta 1 代表了 Google 的整个 Go 团队和世界各地的 Go 贡献者所做的大量工作,我们很高兴听到您的想法。
Go 1.18 Beta 1 是第一个包含 Go 对使用参数化类型的泛型代码的新支持的预览版本。
https://go.dev/blog/why-generics
泛型是自 Go 1 发布以来 Go 最重要的变化,当然也是我们做过的最大的单一语言变化。
对于任何大型的新功能,新用户发现新错误是很常见的,我们不希望泛型成为这个规则的例外;
一定要以适当的谨慎接近他们。
此外,某些微妙的情况,例如特定类型的递归泛型类型,已推迟到未来版本。
也就是说,我们知道一些早期采用者非常高兴,如果您有您认为特别适合泛型的用例,我们希望您能尝试一下。
我们发布了一个关于如何开始使用泛型的简短教程,并于上周在 GopherCon 上发表了演讲。
您甚至可以在 Go 开发分支模式下的 Go 游乐场上试用。
https://go.dev/play/?v=gotip
Go 1.18 Beta 1 添加了对编写基于模糊测试的内置支持,以自动查找导致程序崩溃或返回无效答案的输入。
https://go.dev/blog/fuzz-beta
Go 1.18 Beta 1 添加了新的“Go 工作区模式”,可让您同时使用多个 Go 模块,这是大型项目的重要用例。
https://go.dev/design/45713-workspace
Go 1.18 Beta 1 包含一个扩展的 go version -m 命令,它现在记录构建细节,例如编译器标志。
程序可以使用
debug.ReadBuildInfo
查询自己的构建详细信息,现在可以使用新的
debug/buildinfo
包从其他二进制文件中读取构建详细信息。
此功能旨在成为任何需要为 Go 二进制文件生成软件物料清单 (SBOM) 的工具的基础。
今年早些时候,Go 1.17 添加了一个新的基于寄存器的调用约定,以加速 x86-64 系统上的 Go 代码。
Go 1.18 Beta 1 将该功能扩展到 ARM64 和 PPC64,从而提高了 20% 的速度。
感谢为此 Beta 版本做出贡献的所有人,尤其是 Google 的团队,他们多年来一直在为使泛型成为现实而不懈努力。
这是一条漫长的道路,我们对结果非常满意,希望您也喜欢。
有关更多详细信息,请参阅 Go 1.18 的完整发行说明草稿。
https://tip.golang.org/doc/go1.18
与往常一样,特别是对于测试版,如果您发现任何问题,请提出问题。
https://go.dev/issue/new
我们希望您喜欢测试 Beta 版,
并希望您在 2021 年余下的时间里都能安然度过。
节日快乐!
相关文章