尼斯·里奇,C语言之父,UNIX之父。曾担任朗讯科技公司贝尔实验室 下属的计算机科学研究中心系统软件研究部的主任一职。1978年与布莱恩·科尔尼干(Brian W. Kernighan)一起出版了名著《C程序设计语言(The C Programming Language)》,现在此书已翻译成多种语言,成为C语言方面最权威的教材之一。2011年10月9日,丹尼斯-里奇去世,享年70岁。

人物信息  丹尼斯·里奇,全称丹尼斯·麦卡利斯泰尔·里奇。美国计算机科学家,对C语言和其他编程语言、Multics和Unix等操作系统的发展做出了巨大贡献。里奇在哈佛大学学习物理学和应用数学毕业,1967年他进入贝尔实验室,是朗讯技术公司系统软件研究部门的领导人。1983年他与肯·汤普逊一起获得了图灵奖。理由是他们“研究发展了通用的操作系统理论,尤其是实现了UNIX操作系统”。

肯·汤普逊(左)和丹尼斯·里奇(右)

1999年两人为发展C语言和Unix操作系统一起获得了美国国家技术奖章。在技术讨论中,他常被称为dmr,这是他在贝尔实验室的Email地址。在里奇的成长历程中,有两个人对他的影响最大,一个是他父亲,而另一个是他的挚友,同为UNIX发明人的肯·汤普逊。尤其是后者。 有人问过丹尼斯,他的偶像是谁,不论在计算机领域还是其他领域?他说:我不是在英雄熏陶下成长起来的。很显然,对我职业生涯影响最大的人物是肯·汤普逊。UNIX大部分是他的工作,同样也是C语言的前辈,同样Plan 9系统的大部分工作也是他做的。并且在这其间Ken做了第一个计算机象棋大师。

学习经历  

 丹尼斯·里奇获得学士学位并且获得哈佛大学更高的学位,在那里以肄业生资格学习物理,以研究生资格学习应用数学。这时候,一个偶然的机会改变了他一生的选择。里奇这样描述他的转变,当他听取一些非课程类的计算机讲座后(大约1960年),开始对计算机着迷,并选择了一学期正规(介绍性的)课程。第一部分是模拟计算机,后面是关于打孔卡片设备的,然后是关于真正的数字式计算机的,并为Univac I号机准备了一个程序。当时他是一个主修物理学的学生,但是更加着迷于计算机处理的理论和实际问题。因此,他的毕业论文大部分是理论方面的(递归函数的层次),但是也开始投入更大精力到实践方面。作为助教为同一个介绍性课程的后续版本工作了三年——不过那时计算机已经成了IBM7049。 1968年获得数学博士,而论文正是上面的《递归函数的的层次》。1967年加入贝尔实验室,他的父亲阿利斯泰尔·里奇(Alistair E. Ritchie)在那里有长时间的工作经历,他的父亲对晶体管电路类的东西很有研究,正是由于父亲的影响,也使得他走上了科学研究之路。不久后,加入了Multics项目,那时由贝尔实验室、麻省理工学院和通用电器三家的合作项目。里奇负责多道处理机的BCPL语言和GE650的编译器,它们都是属于GECOS系统的。同样的,他也写了ALTRAN语言的代数编译器,那是用于符号计算机的一种语言和系统。[2]

个人著作

  The C Programming Language(即《C程序设计语言》)

  Unix Programmer's Manual[3]

主要研究

  C++的开发者和设计师、里奇在贝尔实验室的同事比雅尼·斯特劳斯特鲁普说:“假如里奇决定在那十年里将他的精力花费在稀奇古怪的数学上,那么Unix将胎死腹中。” 事实上,丹尼斯·里奇与肯·汤普逊两人发展了C语言,同时发展了Unix操作系统,在电脑工业史上占有重要的席位。至今为止C语言在发展软件和操作系统时依然是一个非常常用的电脑语言,它对许多现代的编程语言如C++、C#、Objective-C、Java和JavaScript拥有极大的影响。在操作系统方面Unix也具有极大的影响:今天市场上有许多不同的Unix方言如AIX、Solaris、Mac OS X和BSD等,以及与Unix非常相似的系统如Minix和非常普及的Linux操作系统。甚至其Microsoft Windows操作系统与Unix相竞争的微软为他们的用户和开发者提供了与Unix相容的工具和C语言编译器。利奇还参加发展了Unix和C语言的两个后继软件:Plan 9和Inferno操作系统以及Limbo语言。两者均是基于他以前的工作上发展的。[4]

主要荣誉

  从二十世纪七十年代起,他的工作得到了很多计算机组织的公认和表彰,如:美国计算机协会(ACM)授予的系统及语言杰出论文奖(1974);电气和电子工程师协会(IEEE)的 Emmanuel Piore 奖(1982);贝尔实验室特别人员奖(1983);美国计算机协会(ACM)的图灵奖(1983); NEC公司的基金奖(1989);电气和电子工程师协会(IEEE)的优秀奖章(Hamming Medal)(1990) 等等。[5]

人物逝世

  北京时间2011年10月13日上午,资料显示,美国著名计算机专家、C语言发明人、UNIX之父丹尼斯·里奇(Dennis Ritchie )已经于当地时间2011年10月12日去世(北京时间为2011年10月13日),享年70岁。[6][7]

社会影响

  C语言是使用最广泛的语言之一,可以说,C语言的诞生是现代程序语言革命的起点,是程序设计语言发展史中的一个里程碑。自C语言出现后,以C语言为根基的C++、Java和C#等面向对象语言相继诞生,并在各自领域大获成功。但今天C语言依旧在系统编程、嵌入式编程等领域占据着统治地位。C语言,这种最有效、最通用的编程语言,就是他开发的,而这还是他在做另一个项目时的副产品。丹尼斯·里奇还和肯·汤普逊一起开发了Unix操作系统,因此,他还是名副其实的Unix之父。[8]

社会评价

  

  著名的计算机科学家 N.Wirth评价他说, 丹尼斯里奇先生的专业精神令人感动,近40年如一日,在他所从事的领域辛勤耕耘,他的多项发明,包括C语言,Unix,也包括现在正在进行的Plan9,无论哪一项,在软件发展史上都有着举足轻重的地位,和他的伟大成就形成对照的是他的行事,态度低调,他的表达,象他的软件一样,简洁生动而准确。 C++的成功,很大一部分也来自于C,是C语言的普及和深入,才有了后面的凤凰涅盘,从另一个角度,在同另一语言大师Pascal之父Niklaus Wirth交流时,C++的名字也是源自C语言的利器,Wirth先生不无惋惜地表示,后来他开发的语言可惜没叫Pascal2。

计算机传奇人物之丹尼斯·里奇相关推荐

  1. 计算机传奇人物之唐纳德·克努特

    唐纳德·克努特(Donald Ervin Knuth)--经典巨著<计算机程序设计的艺术>的年轻作者. 洋洋数百万言的多卷本<计算机程序设计的艺术>(The Art of Co ...

  2. 计算机传奇人物之詹姆斯·高斯林

     Java之父的由来 James Gosling出生于加拿大,是一位计算机编程天才.在卡内基·梅隆大学攻读计算机博士学位时,他编写了多处理器版本的Unix操作系统. 1991年,在Sun公司工作期间, ...

  3. 计算机传奇人物之詹姆斯.高斯林

    Java之父的由来 James Gosling出生于加拿大,是一位计算机编程天才.在卡内基·梅隆大学攻读计算机博士学位时,他编写了多处理器版本的Unix操作系统. 1991年,在Sun公司工作期间,高 ...

  4. 丹尼斯·里奇-c语言之父,Unix之父

    丹尼斯·里奇,全名丹尼斯·麦卡利斯泰尔·里奇.C语言之父,UNIX之父.曾担任朗讯科技公司贝尔实验室下属的计算机科学研究中心系统软件研究部的主任一职.1978年与布莱恩·科尔尼干(Brian W. K ...

  5. C语言之父,UNIX之父丹尼斯·里奇去世 享年70岁

    [caption id="attachment_84" align="alignleft" width="278" caption=&quo ...

  6. C语言发明人丹尼斯-里奇去世

    美国著名计算机专家.C语言发明人之一丹尼斯·里奇 北京时间10月13日上午消息,维基百科资料显示,美国著名计算机专家.C语言发明人之一丹尼斯·里奇(Dennis Ritchie )已于10月9日去世, ...

  7. 传奇人物李兴平5000万卖掉hao123后在做什么

    hao123.com的主人黑苹果李兴平在5000万卖掉hao123.com之后现在在忙些什么,是否如有些人所说每天抱着美人睡大觉?今天偶然查询ip138.com的信息,居然发现这是李兴平的个人网站,顺 ...

  8. 计算机界的传奇人物:高纳德

    高纳德设置了一个悬赏游戏.如果有人挑出了他编写的TEX程序的错误,他就给挑错者奖励.第一个错误值2.56美元,第二个值5.12美元,第三个值10.24美元.据说,这张10.24美元的支票是他迄今为止为 ...

  9. 丹尼斯·里奇-C语言创始人

    丹尼斯·里奇 维基百科,自由的百科全书 跳转到: 导航. 搜索 丹尼斯·里奇 出生 1941年9月9日 Bronxville 逝世 2011年10月12日 (70歲)[1] [2]  美国新泽西州美利 ...

最新文章

  1. html后缀的网页怎么复制,如何将HTML格式的文本从Chrome浏览器扩展复制到剪贴板上?...
  2. 惊艳了!升级版的 APDrawing,秒让人脸照变线条肖像画
  3. presonus studio one 5中文版
  4. 【C/C++多线程编程之二】pthread简介
  5. .Net 4.X 提前用上 .Net Core 的配置模式以及热重载配置
  6. linux添加nginx,linux下安装Nginx1.16.0的教程详解
  7. jQuery学习笔记(二)
  8. rtcp webrtc 接收_WebRTC RTP/RTCP 源码分析(四):RTCP 的接收和解析
  9. Java PreparedStatement
  10. 使用instsrv.exe和srvany.exe创建windows服务
  11. 计算机图形学中的抗锯齿
  12. sp导出贴图到maya
  13. QTableWidget 合并单元格
  14. 番茄花园 产业链 洪磊 中国
  15. 亲民地理35期-雨中登泰山_我是亲民_新浪博客
  16. 如何在 Ubuntu 上配置 ROS和LPMS IMU传感器
  17. 如何两个电脑共享文件实现多人编辑_excel怎么实现多人共同编辑一个文档
  18. linux系统如何安装mtk驱动程序,模块编译问题 给MTK芯片的wifi网卡编译linux驱动 系统是mint...
  19. python 输入5*5矩阵a、完成下列要求_python编程练习(五)
  20. 租车小程序系统开发制作功能介绍

热门文章

  1. 网页中链接实现打印功能
  2. Submerge 3 for Mac 3.4.6 字幕制作工具 中文破解版下载
  3. 爱客专业服务团队是企业转型SaaS的关键
  4. 记录Android开发中的问题及解决方法
  5. 梦幻西游 python.dll_梦幻西游游戏参数
  6. NO.2-SAP S4 HANA Cloud实施方法论(2)
  7. SqueezeNet网络讲解
  8. 在休斯敦巨型人造湖中,NASA“养”了一只海底变形金刚
  9. cocos2d-x传智播客_Hanselminutes播客35-HDTV状态
  10. 【机器视觉】Liunx安装halcon软件,进行视觉检测