Go 1.18 泛型会来,但官方库支持可能得等等

2021-10-14 16:28:00 +08:00
 nanmu42

Rob Pike: don't change the libraries in 1.18

大意是担心一次改得太大出错了找补不回来( Go 1 得全系列保证兼容,也不希望出现 Python 2/3 的那样的分裂情况),想先看看社区怎么用,再慢慢更新标准库。

标准库的实验会在老地方 golang/x/exp 里展开。

https://github.com/golang/go/issues/48918

8327 次点击
所在节点    Go 编程语言
62 条回复
stevenhawking
2021-10-15 00:51:33 +08:00
那个啥,说句中国互联网圈子政治不正确的话,我能推荐一下 php 吗?虽然没有泛型但写起来不复杂,也不比其他任何语言差,还可以全端一把梭,不香吗?人生苦短,我选 php 。
iseki
2021-10-15 01:09:24 +08:00
那个啥,说句中国互联网圈子政治不正确的话,我能推荐一下 kotlin 吗?虽然编译缓慢 gradle 更慢,但抱着 JVM 大腿生态问题不大,想尝鲜还有 coroutine,这东西某种意义上做的比 go 的 goroutine 好。更何况空安全啊等等各种漂亮的语法极大降低脑细胞阵亡概率。
lxml
2021-10-15 01:16:16 +08:00
go 在 dep 问题上处理确实欠妥,不过我喜欢的就是 go 跟 ios 似的,加东西瞻前顾后,先提供少量精华特性,再慢慢往上加,反观 某 js,除了糟粕就没多少精华了
mx8Y3o5w3M70LC4y
2021-10-15 09:00:55 +08:00
@janxin 当然此处的 js 指用了 ts 的 js 呀
mx8Y3o5w3M70LC4y
2021-10-15 09:01:45 +08:00
@stevenhawking 你们拍 h 片并不可以全端啊,写个移动端 app ?
mx8Y3o5w3M70LC4y
2021-10-15 09:03:07 +08:00
@lvdb 不过 php 的确写起来好快啊,改起来也快🥲
qq1340691923
2021-10-15 09:25:42 +08:00
@stevenhawking 弱类型语言要啥泛型?
Rwing
2021-10-15 10:05:55 +08:00
@rahuahua 世界范围内并不少,比 go 高 3-4 倍左右,是 java 的 1/2 左右,可以参见 jetbrains 的调查数据
@tabris17 如果一个语言三方库太少,他都活不到 2021 年,C#不缺少任何库,无非就是多少的问题,例如 java 的 json 解析库有 5-6 个,C#可能有 1-2 个
janxin
2021-10-15 10:10:28 +08:00
@lvdb 不过一般我对其他语言用户都是推荐 CoffeeScript
FightPig
2021-10-15 10:56:50 +08:00
相比 go 我真的喜欢 rust,但编译起来 实在比 go 慢太多,而且每次 target 目录太大了,
yx1989
2021-10-15 10:59:00 +08:00
@ipwx C 渣渣就算了吧,除了没有 GC 性能可能好一点点。写的慢,编译慢;浪费青春,浪费生命。

编码 5 分钟,修 core 2 小时(如果顺利的话)。项目大一点,编译时间巨长。
ipwx
2021-10-15 11:16:07 +08:00
@yx1989 写得快,编译慢。编译慢倒是事实,得特别小心头文件嵌套……

但是写得慢,恕我直言,我怎么没这种感觉? C++ 写起来很爽的,特别是算法,没有模板和零开销抽象写个锤子的算法?另外只要不含界面的东西,C++ 写起来也都挺好用的,只要你花点时间写个比如 1 万行的基础库屯着。
ZSeptember
2021-10-15 11:16:50 +08:00
影响不大,放到 exp 也是可用。
主要加了泛型,自己写库爽多了
yejinmo
2021-10-15 14:31:16 +08:00
都 2021 年了怎么还有一提 .NET 就微软的
.NET 早就开源给了 .NET 基金会
.NET 基金会是独立运作的组织
fakeshadow
2021-10-15 17:54:51 +08:00
主题: xxx
回复: me me me
ChrisFreeMan
2021-10-15 22:21:46 +08:00
chenqh
2021-10-16 16:45:01 +08:00
@Rwing C#主要是一开始绑定死了 windows,不支持 linux 呀,语法再好,不支持没有办法呀,不想 golang,一开始就是全平台
rahuahua
2021-10-17 11:30:45 +08:00
@Rwing 说的是开源基础项目,不是指业务,云原生基本就是 Go+Java 的市场了。做业务没必要有歧视,公司选择自然有自己的考虑,中国选择 Go 也没问题。
crclz
2021-10-17 12:37:31 +08:00
预言:如果 golang 加入泛型,那么 golang 的工程能力(团队生产力)会被削弱。
如果要增强一个语言(例如 java )的工程能力(团队生产力),那么请在框架部分启用全部特性,然后在除框架以外的部分禁止团队成员使用泛型、继承等特性。
sampeng
2021-10-18 11:04:22 +08:00
相比 GO 更喜欢 rust 。。。解决了绝大部分的事情。。除了编译太慢没什么其他缺点。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/807840

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX