在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。

这一次 Linus Torvalds 发怒的原因在于 Andy 给出的移除 union 别名的原因是“根据标准行事”。Linus 回复邮件认为 Andy 这样的解释简直就是垃圾,并且还很危险,他解释使用 union 别名本身其实就是一种在 gcc 中开发的传统和标准,甚至它实际上已经是一种成文规定,并大骂对方白痴,同时大骂 C 标准是垃圾,言辞激烈。

“你为什么做出这样的解释呢,不要跟我说什么 C 标准描述得不清楚,C 标准有时就是一坨屎”,Linus 接着解释:“你所谓的这个标准,它对于别名规则的指导完全就是错误的!它需要被完全地无视,并且每个编译器都要为这样脑残的标准给出相应的解决方案,这就是我们使用 -fwrapv 和 -fno-strict-aliasing 的原因。而你现在竟然说根据这样一个标准来行事,你这样的理由真的没有任何意义。”

Linus 全程围绕 Andy 给出的理由“根据标准行事”进行抨击,他的意思是当标准与现实和代码的可靠性相冲突时,那么标准就是不重要的,“我一再强调:当标准与现实相冲突时,那标准文档就是卫生纸,它就完全没意义。事实上,在我面前卫生纸比标准文档还有用,至少它可以让我的屎不蘸到屁股上”,邮件最后他又平静地指出:“标准也需要质疑。”

随后在追加的第二封邮件中,Linus 表示他已经将 Andy 的 PR 合并,并且特别说明自己不是不喜欢他的代码,但是他还是“语重心长”(语气已经缓和了很多)地解释到:“我只是真的完全无法接受那种不顾现实的单方面的解释。”

同时他也解释了为什么说 Andy 给出这样的理由是很危险的,他认为这理由听起来就像是正确的,对于很多人来说,白纸黑字上的所谓标准是需要敬畏的,但是如果一些人不了解更多细节,比如在这件事情中,他不知道其实 union 别名就是 gcc 的标准做法,那他就被误导了!”标准有它发挥作用的地方,但是它也有局限“,Linus 最后写道。

Andy 回复邮件表示赞同 Linus 的说法,同时他也解释其实在设备属性框架中 union 别名确实是不合适的,所以才将它移除,而原因也不只是他之前说的“根据标准行事”,他在多个原因中可能选择了不太说得过去的一个。

最后 Andy 还补充了 Linus 关于“呼唤标准“(Appeal to Standards)在编程上应该被认为是一种逻辑谬误的看法,他认为这不仅仅只局限于编程领域。

此次 Linus 的发飙,怼出了一番大道理,标准有它的约束作用,但也是有作用条件的,道理其实很简单,不用过多分析。不去像 Andy 那样谈论到宽泛的领域,作为日常依据各种标准编程文档行事的程序员,欢迎你留言吐槽/赞美/…标准的那些事。

Linus 又开怼:有时候标准就是个垃圾!相关推荐

  1. Linus 又开怼:有时候标准就是一坨屎!

    (点击上方公众号,可快速关注) 转自:开源中国 www.oschina.net/news/96906/linus-was-angry-about-standard-saying 在一个 Linux 内 ...

  2. Linux创始人Linus Torvalds怒怼Intel:正视问题而不是搞公关才是正事

    本文由 「AI前线」原创,原文链接:Linux创始人Linus Torvalds怒怼Intel:正视问题而不是搞公关才是正事 作者|Agam Shah,Linus Torvalds 译者|Debra ...

  3. 5 万条微信语音升入太空;阿里京东否认停止社招;雷军开怼华为 | 极客头条...

    「CSDN 极客头条」,是从 CSDN 网站延伸至官方微信公众号的特别栏目,专注于一天业界事报道.风里雨里,我们将每天为朋友们,播报最新鲜有料的新闻资讯,让所有技术人,时刻紧跟业界潮流. 快讯速知 5 ...

  4. HR搬程序员椅子拍老板马屁,开怼的程序员被开?

    最近吃到一个瓜,有个公司的人事误以为程序员的自用办公椅是公司的,于是让阿姨搬到了老板的办公室,并说到:"创业还未成功,开发人员还不能享受这么好的椅子". 结果被程序员怼:" ...

  5. 只要999,拍照不用修!雷军“死磕性价比”,为二儿子Redmi开怼友商

    Redmi品牌的独立,对小米而言是正常业务发展,友商实在不用太过在意. 2019年第一弹,小米没有留给传说中的搭载骁龙855的小米9,而是给了"曾经"的红米,现在的--Redmi. ...

  6. 只要999,拍照不用修!雷军“死磕性价比”,为二儿子Redmi开怼友商...

    Redmi品牌的独立,对小米而言是正常业务发展,友商实在不用太过在意. 2019年第一弹,小米没有留给传说中的搭载骁龙855的小米9,而是给了"曾经"的红米,现在的--Redmi. ...

  7. “不用 Windows 11 会更好”,FSF 霸气开“怼”!

    整理 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 自 6 月微软官宣 Windows 11 以来,总是有很多声音.有人期待 Windows 11 的全新 UI 界面,有人对它支持安卓 A ...

  8. 超级不爽,居然被人开怼:估计你一辈子就是个程序员

    大家好,今天看到一个非常扯蛋的事情. 有程序员因为能力很强,公司非常满意,结果派了一位 HR 与其谈薪资. 但是这家公司给的薪资并不能让人满意,于是这位程序员委婉拒绝. 没想到奇葩的事情发生了,可能是 ...

  9. 特斯拉新·自动驾驶系统就绪,马斯克拿SEC开怼抢热度

    李根 夏乙 发自 凹非寺  量子位 报道 | 公众号 QbitAI 终于啊终于,跳票数个月后,特斯拉软件系统V9,现在来了. 北京时间10月6日,特斯拉官方通告:北美地区的特斯拉车主,将率先完成更新推 ...

最新文章

  1. Linux之tee命令
  2. 《电子基础与维修工具核心教程》——2.6 节点分压原理
  3. 用DirectoryInfo搜索文件夹时过滤隐藏文件夹
  4. 避免一个用户多次登录修改版
  5. Hadoop3.0的新特性
  6. Hadoop Exception in createBlockOutputStream
  7. 【转】【最小树形图】有向图的最小生成树【朱刘算法】
  8. QSqlQueryModel结合QTreeView遇到的查询结果不显示的问题
  9. 软件杯参赛【学习记录】
  10. 用ipv6搭建文件服务器,ipv6服务器搭建
  11. Android实现推送PushService通知No…
  12. 跨模态行人重识别:RGB-Infrared Cross-Modality Person Re-Identification 学习记录笔记
  13. 2022年“研究生科研素养提升”系列公益讲座在线测评试题及解析
  14. 计算机报名怎么老是密码错误,中考报名显示密码错误 中考网上报名说我密码错误怎么办...
  15. 使用java计算数组方差和标准差
  16. 屏幕监控软件怎样监控电脑的扩展屏?
  17. 用意念打字,中国脑机接口新纪录诞生!
  18. 软件限时使用功能实现
  19. Leetcode 703. Kth Largest Element in a Stream
  20. jsMath对象中的三角函数

热门文章

  1. 关于卷积神经网络可视化的一点心得
  2. WIN10+Ubuntu16.4 双系统,遇到的坑
  3. 记录——《C Primer Plus (第五版)》第十一章编程练习第四题
  4. Markdown数学符号
  5. TFLearn的简单实例
  6. 传统接口写法与Restful API 区别
  7. Git教程之一个团队如何在github上协作开发
  8. 从入门到入土:基于Python爬取四川大学所有官方网站|狗头保命|
  9. 微软拆分 VS Code 中 Python 扩展,部分功能可独立下载
  10. 容器混合云发展引争议,专家亚马逊云科技中国峰会共探讨