Go 1.10 的发布说明草案:预计于 2018 年 2 月发布

来源: OSCHINA
编辑: 局长
2017-11-18

Go 1.10 还没发布,下面将简单介绍正在进行中的 Go 1.10 发布说明草案。

Go 1.9 已于 2017 年 8 月发布,最新的 Go 1.10 预计将于 Go 1.9 发布六个月后 —— 2018 年 2 月发布。

Go 1.10 大部分的变更仍然集中在工具链、运行时和库的实现上。一如既往地,此版本依然会保持与 Go 1.x 的兼容性,官方表示几乎所有的 Go 应用程序都能像以前一样继续编译和运行。

语言特性方面的改变

语言特性方面没有实质性的变化。

极端情况下,由无类型常量引起的变化已经弄清楚。因此,编译器也已进行升级,它可允许这样的索引表达式 x[1.0 << s] 通过编译,其中 s 是一个无类型常量。go/types 包也已完善。

方法表达式的语法(grammar)也已进行更新,它将会放松语法(syntax)的规则来允许任何类型表达式作为接收方,这与编译器已经实现的特性相匹配。例如 struct{io.Reader}.Read,如果编译器已经接受并且现在被语言语法所允许,它是一个有效的表达式。

运行时

TODO:不从 Go 没有创建的锁定线程或线程中启动新线程。LockOSThread/UnlockOSThread 现在是嵌套的。LockOSThread + return 可杀掉线程。

堆栈跟踪不再包含隐式封装函数(以前被标记为 <autogenerated>),除非封装本身出现错误。

GOMAXPROCS 设置不再有限制(在 Go 1.9 中,限制是 1024)

性能

性能方面的改变较多。由于垃圾收集器的加速,将会生成更好的代码以及核心库中的优化。此外,大多数程序运行速度将会更快一些。

核心库

标准库的改动较小,bytes 和 net/url 中的变化最有可能要求对现有的程序进行更新。

总的来说,更新的内容涉及到语言特性、Port、工具、运行时、性能、垃圾收集器以及核心库这些方面,其中主要是对工具的更新。

点此查看详细内容

展开阅读全文
5 收藏
分享
加载中
精彩评论
希望Golang发展的越来越好,开源社区不断的壮大,优秀的开源项目,尤其在AI、IoT等方面的应用越来越成熟,不断趋于工业化级的成熟发展。。。
2017-11-20 09:04
10
举报

引用来自“Wei911”的评论

本想着1.9之后发布2.0, 结果来个1.10

引用来自“回去干活”的评论

我觉着现在的语法规则非常好,并不希望出2.0加什么泛型...
golang就是要将精简的语法支持下去,不要添加高级语法特性.
希望出泛型和三元运算符😊
2017-11-19 12:21
4
举报

引用来自“Wei911”的评论

本想着1.9之后发布2.0, 结果来个1.10
我觉着现在的语法规则非常好,并不希望出2.0加什么泛型...
golang就是要将精简的语法支持下去,不要添加高级语法特性.
2017-11-19 10:13
2
举报

引用来自“Wei911”的评论

本想着1.9之后发布2.0, 结果来个1.10

引用来自“回去干活”的评论

我觉着现在的语法规则非常好,并不希望出2.0加什么泛型...
golang就是要将精简的语法支持下去,不要添加高级语法特性.

引用来自“oschina小吕”的评论

希望出泛型和三元运算符😊
泛型等2.0吧,三目运算符等到3.0也没戏。

虽然有时候用用三目运算符也是挺不错的……
2017-11-20 10:40
1
举报
本想着1.9之后发布2.0, 结果来个1.10
2017-11-18 22:34
1
举报
最新评论 (23)

引用来自“flaming60”的评论

希望Golang发展的越来越好,开源社区不断的壮大,优秀的开源项目,尤其在AI、IoT等方面的应用越来越成熟,不断趋于工业化级的成熟发展。。。

引用来自“火灵珠”的评论

AI、loT方面有哪些GO的开源项目,能罗列下吗?
回复@火灵珠 : https://awesome-go.com/#machine-learning
2017-11-30 13:00
0
回复
举报

引用来自“flaming60”的评论

希望Golang发展的越来越好,开源社区不断的壮大,优秀的开源项目,尤其在AI、IoT等方面的应用越来越成熟,不断趋于工业化级的成熟发展。。。

引用来自“火灵珠”的评论

AI、loT方面有哪些GO的开源项目,能罗列下吗?
回复@火灵珠 : https://awesome-go.com/#iot-internet-of-things
2017-11-30 12:58
0
回复
举报

引用来自“Wei911”的评论

本想着1.9之后发布2.0, 结果来个1.10

引用来自“回去干活”的评论

我觉着现在的语法规则非常好,并不希望出2.0加什么泛型...
golang就是要将精简的语法支持下去,不要添加高级语法特性.

引用来自“oschina小吕”的评论

希望出泛型和三元运算符😊
三元运算符可以不用的
2017-11-24 12:06
0
回复
举报
需要三元运算符,不然多写好多行代码😂
2017-11-22 17:58
0
回复
举报
几乎所有的 Go 应用程序都能像以前一样继续编译和运行,如何应对这个几乎
2017-11-22 17:27
0
回复
举报

引用来自“flaming60”的评论

希望Golang发展的越来越好,开源社区不断的壮大,优秀的开源项目,尤其在AI、IoT等方面的应用越来越成熟,不断趋于工业化级的成熟发展。。。
AI、loT方面有哪些GO的开源项目,能罗列下吗?
2017-11-22 13:35
0
回复
举报

引用来自“不最醉不龟归”的评论

go什么时候坐上盟主的宝座啊~等了好些年了。
估计还要等个十年八年的。。。
2017-11-22 13:02
0
回复
举报

引用来自“Wei911”的评论

本想着1.9之后发布2.0, 结果来个1.10

引用来自“回去干活”的评论

我觉着现在的语法规则非常好,并不希望出2.0加什么泛型...
golang就是要将精简的语法支持下去,不要添加高级语法特性.

引用来自“oschina小吕”的评论

希望出泛型和三元运算符😊

引用来自“开源中国最大五毛”的评论

泛型等2.0吧,三目运算符等到3.0也没戏。

虽然有时候用用三目运算符也是挺不错的……
泛型不一定能上吧,现在不还在讨论呢吗。
2017-11-20 12:10
0
回复
举报
go什么时候坐上盟主的宝座啊~等了好些年了。
2017-11-20 11:47
0
回复
举报

引用来自“Wei911”的评论

本想着1.9之后发布2.0, 结果来个1.10

引用来自“回去干活”的评论

我觉着现在的语法规则非常好,并不希望出2.0加什么泛型...
golang就是要将精简的语法支持下去,不要添加高级语法特性.

引用来自“oschina小吕”的评论

希望出泛型和三元运算符😊
泛型等2.0吧,三目运算符等到3.0也没戏。

虽然有时候用用三目运算符也是挺不错的……
2017-11-20 10:40
1
回复
举报
更多评论
23 评论
5 收藏
分享
返回顶部
顶部