- 主题:[转载]Linus Torvalds 称 C++ 是一种很烂的语言
go最早就是解决google网络(后端)处理的吧,很多初始决定和习惯都是google的
感觉,go看作better c比较合适。如果横向和feature rich的语言比,那差意思
另外,go的工具链满足某种洁癖需求
【 在 leadu (leadu) 的大作中提到: 】
: “简单易学易部署”主流语言在这些方面都差不多,区别更可能是主观上的,讨论价值不大,前几大语言都可以这么描述。
: 我不懂什么叫“(网络)系统编程语言”,猜测是像“复盘,赋能,抓手,对标,沉淀,对齐,拉通”?
: 讨论还是聚焦客观对比吧,如果没有啥客观描述,还是等等gpmn回复,他是go版版主
: ...................
--
FROM 123.112.164.*
带gc的语言怎么能做better c呢?
【 在 zkr 的大作中提到: 】
: go最早就是解决google网络(后端)处理的吧,很多初始决定和习惯都是google的
: 感觉,go看作better c比较合适。如果横向和feature rich的语言比,那差意思
:
: ...................
--
FROM 123.116.202.*
系统编程语言意思是用来写系统软件的。系统软件就是相对于应用软件更底层的软件。C就是旧时代的系统编程语言。
我加个括号网络的意思是现代系统编程的重心大部分转向分布式系统了,go的确像你说的面向这部分,也就是比较底层的网络服务,而不是传统系统编程的内核,单机服务。所以它和传统的系统编程语言如C区别还是不小的。
go拿来写写linux下的命令行小工具应该也不错的,虽然现在好像用rust写的更多。
【 在 hgoldfish 的大作中提到: 】
: (网络)系统编程语言的意思是:
: 除了做点网络开发,其它事情干起来特别麻烦。讲得更明白一点。。就是除网络编程这个领域之外, go 是个残废。
: 类似的评价还有:
: ...................
--
修改:ilovecpp FROM 101.82.56.*
FROM 101.82.56.*
大部分函数都返回err error,大部分函数调用都跟着if err return,实际跟unchecked exception已经差不多了。defer就是finally,defer if err就是catch。就是这个满屏的if err return,如果是C肯定搞个宏。
【 在 zkr 的大作中提到: 】
: 似乎,设计者写过文章讨论错误/异常处理的,最后的结论是if err满天飞更折中
: 有人觉得if err太多影响阅读,于是提check还是try什么的
: 看二手评论说,这种有多少支持的就有多少人反对,然后就搁置了
: ...................
--
FROM 101.82.56.*
why not?这种讨论不会有什么休止,满足选型的目标就好
e.g.
编译型,无vm;静态类型;有gc;有较好的os,net标准库;cli only;
editor集成好;cross编译便利;工具链使用简单;能出static的bin;bin的体积小;
有比较方便的伪多线程支持;
etc
满足要求的也不一定只有一个,那就看眼缘了。
【 在 leadu (leadu) 的大作中提到: 】
: 带gc的语言怎么能做better c呢?
--
修改:zkr FROM 123.112.164.*
FROM 123.112.164.*
【 在 ilovecpp (cpp) 的大作中提到: 】
: go拿来写写linux下的命令行小工具应该也不错的,虽然现在好像用rust写的更多。
是方便,但go的runtime大……
rust没默认移除jemalloc的时候,印象中hello world bin和go差不多大
现在好像小一圈了,当然,这不是主要理由。。。
--
FROM 123.112.164.*
说的话,是这么个意思
算各有爱好?都没办法在风格上彻底的说服对方……
【 在 ilovecpp (cpp) 的大作中提到: 】
: 大部分函数都返回err error,大部分函数调用都跟着if err return,实际跟unchecked exception已经差不多了。defer就是finally,defer if err就是catch。就是这个满屏的if err return,如果是C肯定搞个宏。
--
FROM 123.112.164.*
叫better XX的肯定要改进XX的主体功能,边边角角改进XX不能叫better的
c现在很大一部分是用来写操作系统相关的部分,带gc的语言都做不到,不能叫better c
【 在 zkr 的大作中提到: 】
: why not?这种讨论不会有什么休止,满足选型的目标就好
: e.g.
: 编译型,无vm;静态类型;有gc;有较好的os,net标准库;cli only;
: ...................
--
FROM 123.116.202.*
所以 go 的生态位是处于 java/python/c# 和 c 之间的一个小领域。
用 java/python/c# 这种主流开发网关虽然很快,太过于重型,或者速度不行。
用 c 速度是够了,但是门槛太高。
于是就有个折衷的 go 出来。
【 在 leadu (leadu) 的大作中提到: 】
: 叫better XX的肯定要改进XX的主体功能,边边角角改进XX不能叫better的
: c现在很大一部分是用来写操作系统相关的部分,带gc的语言都做不到,不能叫better c
--
FROM 140.224.34.*
api gateway?还是应用层的东西,恐怕不是go原本的设计方向。
用java或者nodejs都可以,前后端总有一边熟悉,为啥要弄个前后端都不熟悉的第三门语言来写api gateway呢?
【 在 hgoldfish 的大作中提到: 】
: 所以 go 的生态位是处于 java/python/c# 和 c 之间的一个小领域。
: 用 java/python/c# 这种主流开发网关虽然很快,太过于重型,或者速度不行。
: 用 c 速度是够了,但是门槛太高。
: ...................
--
FROM 101.82.56.*