[编程开发] 为什么C语言没人喷?

[复制链接]
周亮 发表于 2023-10-3 19:44:26|来自:北京丰台 | 显示全部楼层 |阅读模式
很多程序员喷C++复杂,喷Java啰嗦。我发现几乎没人喷C语言,这是为啥?
全部回复5 显示全部楼层
thesea 发表于 2023-10-3 19:45:26|来自:北京丰台 | 显示全部楼层
先问是不是,再问为什么。这几天 hacker news(国外一个主要关于计算机话题的网站)上的热门文章:
To Save C, We Must Save ABI
hacker news:To Save C, We Must Save ABI在 reddit 上也有很多讨论:
r/rust:To Save C, We Must Save ABI
r/cpp:To Save C, We Must Save ABI并且,还有一篇对上文提出反对的文章:
C Isn't A Programming Language Anymore - Faultlore
hacker news:C Isn't A Programming Language Anymore至于为什么会觉得“没人喷C语言”,我猜大概是因为一般人要是喷C语言,那很多人肯定会质疑:“是不是你太菜了没学会,就来喷语言,C语言是操作系统编程的语言 blah blah ……”(从第二篇文章在 hacker news 的评论就能看出来。)
而上面两篇文章,据我有限(可能不可靠)的了解,第一篇文章的作者是参与制定C语言标准的人,第二篇文章的作者是 rust 编译器的开发者,都是编程语言方面的大佬。
lihao0522 发表于 2023-10-3 19:45:53|来自:北京丰台 | 显示全部楼层
喷到一半core dump了。
其实Linus就喷过C标准的,他说the C standard is _clearly_ bogus shit。
Torvalds on aliasing
Victor Yodaiken在PLOS21 上发的论文“How ISO
C became unusable for operation systems development”喷得更狠,哪里是烂,简直是没用啊!而且还是在C的份额最多的一个领域,令人感叹。
KU123456789 发表于 2023-10-3 19:46:48|来自:北京丰台 | 显示全部楼层
其实吧。。。你考虑一下so和sf这两个站的名字都怎么来的。。。。尤其是sf,现在随随便便段错误的编程语言可不多见了。
NPE好歹是个E,E的后续debug信息都能出来,正版SF一旦发生你就只能看见那8个汉字或4个单词了。
更难受的是C很多时候它出了错不会退出,比如越界,这时候你只能在真正的弱类型语言面前颤抖。
其实现在C已经好很多了,配合一些工具也能快速定位越界问题,但是对比c++和那几个新的。。。简直降维打击。

但问题是,汇编和C这里才是计算机的真相,cpu本来就是无类型的,访问内存归根结底需要一个地址,c++和rust用魔法制造了一个更安全的领域,但是这种安全并不是绝对的。
ake555 发表于 2023-10-3 19:47:32|来自:北京丰台 | 显示全部楼层
C语言无为而治,只提供了计算机模型的最小化封装。
人家只是忠实的展现计算机架构,你喷的一切点都是源自你自己不行。
就好像没有男人敢喷女人高潮太难一样。
dianl 发表于 2023-10-3 19:48:16|来自:北京丰台 | 显示全部楼层
是还没到喷的水平就已经放弃了。

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则