Go语言源码的一个改动
2009年11月11日,光棍节,Google发布了Go语言,马上,就有网友在http://code.google.com/p/go/上找到了一个Go语言包文件操作源码/src/pkg/os/file.go文件的一个最新改动。这个改动的作者就是那个大名鼎鼎的Unix之父Ken Thompson(看看人家,都这么老了,还在写程序,佩服佩服,真是顶级程序员啊——《程序员的八个级别》),而这个改动的Log Message如下所示(把屏抓下来,以免以后某日被放到墙外或是google.com数据丢失或是Google公司倒闭)
Spell it with an “e”
这是一个很著名的典故,要知道这个典故,你需要知道两件事,一个是Ken Thompson的经典语录,一个是Unix的系统调用。
关于Ken Thompson的经典语录,你可以在wikipdia上的Ken Thompson词条中找到,这个事情是这样的。
Ken Thompson was once asked what he would do differently if he were redesigning the UNIX system. His reply: “I’d spell creat with an e.” (Ken Thompson有一次在被问到——如果他可以重新设计Unix系统,他会做些什么不同的事?而他回答到:“我会把“creat”多拼一个e”)
“I’d spell creat with an e”,也就是说,他会把creat这个单词拼成create,而不是creat。为什么是creat呢,这需要我们来看一下creat这个系统调用,你可以在Unix或Linux下简单地man creat你就可以知道,这个系统调用连带其某些参数,如:O_CREAT,都是一个少了“e”的create。(Unix下的有很多东西都是简写,如:usr,gp,ls,mv,ps,满大街的都是缩写)
看看这个改动的diff——这个diff只有一行,第65行,抓屏如下(理由同上)
40年后的今天,Ken Thompson参与Go语言设计,于是,他提交了这个改动,也算是圆了他的愿望,从这点看来,Ken Thompson把Go语言看得和Unix一样重啊。难道Go语言也会像Unix一样成为另一个传奇?(Unix传奇 上篇,下篇)
转载于酷壳CoolShell 无删改 仅以此纪念陈皓(左耳朵耗子)
然后今天发现 wps ,excel ,记事本等软件打开的时候,会显示水印,水印信息是 mac 地址。这个是怎么实现的?我现在还能打开注册表,有大佬指条明路吗?? 防护项目:注…
涨幅还挺高的,30 天的商业版要 ¥60 了。问了原因说是风控导致的成本上升?我怎么感觉是洗钱的要收网了。 是的哦,前几天去淘宝买 cursor ,店家都说缺货了。 可…
腾讯云讨饭的 100 元代金券有到账的吗 没 没到 没有 没有是不是涉嫌欺诈啊 没有 三天内 到账了,已经给轻量续费了五个月 你们故障期间如果没有尝试登录过控制台…