2011年,人们对乔布斯的去世记忆深刻,但这一年还有另一位本应获得同样关注的人物也与世长辞,他就是C语言之父丹尼斯·里奇(Dennis Ritchie)。

不过,并非所有人都没能正确认识到里奇所曾作出的贡献。

“乔布斯的逝世引起了一片哭声,那种情形非常动人,而且乔布斯受到这样的待遇也是合情合理的。但在事实上,里奇对这个世界的影响更大,然而公众却甚至都不知道他到底是谁。”编程领域中的传奇人物、目前供职于谷歌(微博)的罗伯·派克(Rob Pike)说道,他曾在贝尔实验室与里奇共事20年。

在里奇去世时,派克在Google+社交网络上发帖宣布了这一噩耗。2011年10月8日,在经历了长时间的病痛折磨后,里奇在他位于美国新泽西州的家中与世长辞。在资深科技人士中,人们对这一消息所作出的反应是巨大的;但在互联网上,人们向里奇献上的悼词完全无法与他对现代社会带来的广泛影响画上等号。

C语言之父

丹尼斯·里奇被誉为“C语言之父”,他在生前与贝尔实验室的合作伙伴肯·汤普森(Ken Thompson)一起利用这种编程语言开发出了Unix操作系统。在随后的岁月里,整个科技世界中有太多东西都是在这个操作系统的基础上构建起来的,其中也包括乔布斯生前所建立和管理的苹果“帝国”。

“在互联网上,几乎所有东西都会使用C语言和Unix操作系统。”派克在近日接受《连线》杂志采访时说道。“浏览器是用C语言写成的;Unix内核是用C语言写成的;网络服务器是用C语言写成的,否则就是用衍生自C语言的Java或C++语言写成的,要么就是Python或Ruby语言,而这两种语言都是在C语言中执行的。此外,我几乎可以担保,所有运行这些程序的网络硬件也都是用C语言写成的。”

“现代信息经济在极大程度上是在里奇生前所做工作的基础上建立起来的,对此无论用多么夸张的言辞来形容都不为过。”派克说道。

他还补充道,就连微软Windows操作系统也曾是用C语言来编程的;而且,Unix还为苹果的桌面操作系统Mac OS X和移动操作系统iOS提供了支持。“乔布斯可以说是‘有形之王’,而里奇则基本上应该算是‘无形之王’。”麻省理工学院电子工程大学和计算机科学教授、计算机科学及人工智能实验室(Computer Science and Artificial Intelligence Laboratory)成员马丁·里纳德(Martin Rinard)说道。

“乔布斯的天才之处在于,他能造出这些令人们深深喜爱的产品,这是因为他很有品味,能作出让人们叹服不已的东西。而里奇造出的东西能让那些技术人士用来构建核心的基础设施,这些基础设施在建成以后不一定会让人们再看得到,但却每天都用得到。”

从“B”到“C”

里奇之所以开发出C语言,是因为他和汤普森需要一种更好的方式来构建Unix系统。最早的Unix内核是用汇编语言编程的,但不久以后两人决定需要开发出一种“更高级别”的语言,能让他们对遍及这个操作系统中的所有数据都具备更大的控制力。1970年前后,他们用Fortran语言开发出了第二个版本的Unix系统,但效果并不理想。然后,里奇就基于汤普森开发的“B语言”提出了一种新的语言。

关于B语言的得名有两种说法,一种说法是来自汤普森的妻子邦妮(Bonnie),另一种说法则是来自上个世纪六十年代中期诞生于剑桥大学的BCP语言。但无论如何,C语言是从B语言衍生出来的这一点都是毋庸置疑的。

B语言是一种解释性语言,而C语言则是一种编译语言,可被转译为机器编码,然后在CPU上被直接执行。在当时,C语言被认为是一种更高级别的语言,不但能给里奇和汤普森带来他们所需要的灵活性,同时速度也很快。

与人们今天所知的C语言相比,第一个版本的C语言并无多大不同,只是稍微简单一些。这种语言能提供完整的数据结构和变量类型,令里奇和汤普森得以构建了新的Unix内核。“他们开发出C语言是为了写一个程序。”派克说道,他在C语言问世的十年以后加入了贝尔实验室。“而那时他们想要编写的程序就是Unix内核。”

里奇曾开玩笑地说道,C语言拥有“汇编语言的力量及其便利性”。换而言之,他承认C语言是一种不那么华丽的语言,其运行位置仍非常接近硬件。在今天,C语言被视为一种低级别的语言,而非高级别。但里奇的这句玩笑话对这种新的语言来说也并不那么公平,原因是从提供真实的数据结构这一方面来说,其运行级别足够高。

科技成就英雄,英雄执剑科技,科技风流人物,尽在《科技英雄传》!每天上午,为您介绍一位科技史上的英豪,记住他们,就是记住历史。

让乔布斯立足肩上的C语言之父的更多相关文章

  1. 乔布斯,TED,我的演讲

    乔布斯传这部独立影片虽然以失败告终,但是人们把期待留给了索尼影业即将投拍的官方乔布斯传记电影. 据传,这部影片将以乔布斯最成功的四次演讲作为主线,这无疑说明,演讲,对于乔布斯这个传奇人物,是非常重要的 ...

  2. 读《乔布斯的NeXT和苹果之间,隔了这两个创业常识》

    原文链接:http://wwww.huxiu.com/article/114950/1.html 前言: 当今硅谷风头最劲的风险投资家马克·安德森曾说,硅谷每年大约诞生15-20家真正值得投资的公司. ...

  3. 【乔布斯05年斯坦福大学毕业典礼上的演讲】——Stay Hungry, Stay Foolish.(转)

    Steve Jobs: Commencement Address at Stanford University "Stay Hungry, Stay Foolish." 求知若饥, ...

  4. 张艾迪(创始人):DCM的不识人.我说我会像乔布斯一样成为投资者的骄傲

      Eidyzhang解码:天才Eidyzhang的诞生 张艾迪(创始人):第一个实习生精英团队 张艾迪(创始人):DCM的不识人.我说我会像乔布斯一样成为投资者的骄傲 2014-05-31 09:4 ...

  5. 苹果公司CEO乔布斯在斯坦福大学毕业典礼上的演讲

    苹果公司CEO乔布斯在斯坦福大学毕业典礼上的演讲 摘要:这是苹果公司CEO乔布斯2005年在斯坦福大学毕业典礼上的演讲,大学途中退学,创业,被解雇,东山再起,死亡威胁,这些他都一一经历了.经营自己与众 ...

  6. Android之父Andy Rubin:被乔布斯羡慕嫉妒的天才

    今年中国掀起一股“苹果热”,智能手机iPhone.平板电脑iPad遭疯抢,一度卖断货.然而,令许多人意想不到的是,在“苹果”的老家——美国市场,智能手机中卖得最火的并不是iPhone,而是Androi ...

  7. 完毕乔布斯的梦想:一个免费wifi共享的乌托邦

    早在2007年推出iPhone时,乔布斯就提出这种如果:商业区与居民区的wifi路由器全民开放,实现与路人共享网络之便.能够想象,那算是一个wifi共享的乌托邦. 数年过去了,乔布斯的梦想依然没能全然 ...

  8. 乔布斯在位时,库克实质上已经在做CEO的工作了:3星|《蒂姆·库克传》

    “ 一些人认为艾夫是接替乔布斯的热门人选,他对苹果的原晃和产品来说至关重要,但他本人对管理企业却毫无兴趣.艾夫想继统做设计.在苹果,他拥有所有设计师都梦寐以求的工作环境——无限的资源和自由创作的空间. ...

  9. Java之父 James Gosling 发表博文 《Too Soon》纪念乔布斯。

    几个礼拜前,我们还在讨论乔布斯的辞职.虽然我们都知道这意味着什么,但是我没有想到一切来的如此之快.已经有很多关于这件事情的文章了,特别是"经济学人"的这篇文章. 乔布斯是一个很独特 ...

随机推荐

  1. input页面居中,软键盘覆盖input

    input框位于底部 对于ios的软键盘遮盖input输入框问题,网上已经有了一些解决办法,无非就是改变布局,再加scroll.js插件实现滚动, input框位于顶部 这种情况不会出现问题, inp ...

  2. C语言学习_从VC++6.0开始

    前言: C语言是一门博大精深的语言,C语言往往是程序员以及所有软件行业从业者的第一门编程语言. 编程环境: 对于初学者来说,我一开始学习C语言,其实是用的turboc 2.0版本,这个很有历史感,但是 ...

  3. css倒三角的几种实现方式

    在网页中,你在很多地方都能看到倒三角,比如tooltips,下拉菜单等.大家有几种方式来实现呢? 1.BASE64编码 图片 假如你已经有了三角形的图片,并且减少HTTP请求,那么将这个图片转换成一个 ...

  4. [PWA] 0. Introduce to Offline First

    Why offline first? Imagin you are visiting a website, it is fine if wifi connection is good. It migh ...

  5. [转] boost库的Singleton的实现以及static成员的初始化问题

    http://www.cnblogs.com/kex1n/archive/2011/04/05/2006194.html effectie c++的条款4中提到: (global对象,定义在names ...

  6. 10 条提升 Android 性能的建议

    About the Speaker: Boris Farber 每个人都知道一个 App 的成功,更这个 App 的性能体验有着很密切的关系.但是如何让你的 App 拥有极致性能体验呢?在 Droid ...

  7. python学习之成员信息增删改查

    主要实现了成员信息的增加,修改,查询,和删除功能,写着玩玩,在写的过程中,遇到的问题,旧新成员信息数据的合并,手机号和邮箱的验证,#!/usr/bin/env python# coding=utf8# ...

  8. android应用的不同版本间兼容性处理

    在Android系统中向下兼容性比较差,但是一个应用APP经过处理还是可以在各个版本间运行的.向下兼容性不好,不同版本的系统其API版本也不同,自然有些接口也不同,新的平台不能使用旧的API,旧的平台 ...

  9. UWP app HelloWorld 的创建

    步骤 1:在 Visual Studio 中创建新项目 启动 Visual Studio 2015 RC.将出现 Visual Studio 2015 RC 起始页. (从现在开始,我们将 Visua ...

  10. 修改Calendar(梅花雨)日历控件 兼容IE9 谷歌 火狐

    修改Calendar日历控件 兼容IE9,谷歌,火狐. 只是能用,出现的位置有所不同,希望有高手再帮我改改吧,谢谢   一. [javascript]   this.iframe     = wind ...