欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C语言、编程语言发展史

程序员文章站 2022-07-11 08:06:11
以铜为鉴,可正衣冠;以古为鉴,可只兴替;以人为鉴,可明得失。 了解和学习一门语言、一个乃至方方面面的任何东西时,如果不知道其历史和现状而只是一上来就一味地闷头苦学,你就...

以铜为鉴,可正衣冠;以古为鉴,可只兴替;以人为鉴,可明得失。

了解和学习一门语言、一个乃至方方面面的任何东西时,如果不知道其历史和现状而只是一上来就一味地闷头苦学,你就很容易“一叶障目不见泰山”。这样火急火燎的就上手苦干,私以为大错特错,所谓“学而不思则罔”。当然,上手苦干也是之后的很重要的部分。

了解c语言的历史,就不得不慢慢品味如下这long long ago 的故事,这涉及到了很多公司和人物


c语言和unix起源与贝尔实验室,而要了解贝尔实验室,我们得先从at&t 开始……

1. at&t(美国电话电报公司)

由名字就可以看出来at&t 主要致力于通讯领域。要说at&t 还得从一个叫贝尔 的人说起…

C语言、编程语言发展史

1.1 bell - 贝尔

我不是说贝尔·格里尔斯(bear grylls)虽然我很佩服这guy…
主角叫亚历山大·格拉汉姆·贝尔(alexander graham bell,1847-1922)是美国著名发明家和企业家,是“电话之父”。

C语言、编程语言发展史

贝尔 成立了一家叫做美国贝尔电话公司 的公司,这就是at&t 的前身,而它最著名的部门就是:贝尔实验室喎? f/ware/vc/"="" target="_blank" class="keylink">vc3ryb25npqgjpc9wpg0kpha+phn0cm9uzz48zw0+yxqmyw1wo3q8l2vtpjwvc3ryb25npidu2sbkmtawtude6rxewprkt9bqo6y+rcd6wcu24ltotcsy8lfwus3w2nfpo6jtydpa19tj7bei1bm78srh1f64rre0wqk2z6opoam8yniglz4nctt4vfg1xdxlbt5hdczhbxa7ddwvzw0+ilpgzqo8c3ryb25npjxlbt6xtlb7z7xnszwvzw0+pc9zdhjvbmc+imv8spzaqms4uavlvjxlbt5hdczhbxa7ddwvzw0+ilrnyv3bv8xttpo1xnftuavlvrrn0dc+v8v5o6zu+lokxtrcorbpwcs4mcutotaltctdwln6ytc7slrns6tnvtk1zvgho7b4tb298czso6zp1ttatcq8zw0+yxqmyw1wo3q8l2vtpids0b6tysexu7lwt9bby7y4tm7wrrrztcs94bn7wcuhozwvcd4ncjxwpshtzekjrl3xzozdwln6tkjb1tdc7btmttojqfnhbibbbnrvbmlvifnwdxjzo6m1xnb3s6g+zb3qpgvtpmf0jmftcdt0ienlbnrlcjwvzw0+pc9wpg0kpha+pgltzybhbhq9"这里写图片描述" src="/uploadfile/collfiles/20160502/20160502112233299.jpg" title="\" />

bell的黑历史

2002年6月15日,美国国会通过一项决议,判定意大利人安东尼奥·梅乌奇(antonio meucci)为电话的发明者。换言之他才是“电话之父”!那么历史到底是怎样的呢?

根据可以网上可以查到的资料显示:
意大利人梅乌奇在1849年的一天在他研究电生理学的过程中发现了“电话的原理”并开始研究他称之为“会说话的电报机”的装置。此时,亚历山大·贝尔才两岁…

在移居美国之后,因为不会英语的关系他始终融入不进主流社会,得不到应有的认可,甚至他连申请专利的钱都不够。更加让人心寒的是,1876年和梅乌奇共用一个实验室的贝尔向美国专利局提出申请电话的专利权!

当然,梅乌奇愤而提起上诉,当时最高法院已经同意以欺诈罪指控贝尔,但就在胜利曙光要显现时,年近80穷困潦倒、病魔缠身的梅乌奇却于1889年带着遗憾离开了人世。

历史就是如此具有魔力,成王败寇,从来如此。贝尔获得了电话的专利权,成为“电话之父”,名声大噪,创建了贝尔电话公司(at&t前身)。自此,历史的车轮一直走到了今天。当然,我们不能因为一点而完全否认一个人,贝尔还是为社会、科技的发展作出了卓越的贡献!

后人只能从当时留下的不知真假的只言片语中猜测当时发生了什么。如果以上是真实的历史,那么我相信随着美国国会的一纸决议,梅乌奇终于可以稍感欣慰了。

1.2 bell labs - 贝尔实验室

贝尔实验室如雷贯耳,自1925年以来,实验室共获得了两万五千多项专利(请自行与国内大部分扯淡专利区分开来),8项诺贝尔奖

C语言、编程语言发展史

如上所述,贝尔实验室 原属于at&t

今天的贝尔实验室 是从原at&t 中拆分出来的朗讯公司(lucent technologies) 的一部分。

C语言、编程语言发展史

确切的说,由于法国阿尔卡特(alcatel)公司于2006年收购了朗讯,在合并后的新公司中,朗讯只占40%,其合并后的规模仅次于美国思科。

名字叫做阿尔卡特-朗讯(alcatel - lucent),贝尔实验室属于阿朗
C语言、编程语言发展史

1.3 总结以上

贝尔实验室的历史如下

贝尔获得了电话专利

贝尔建立贝尔电话公司

贝尔电话公司分离出at&t公司专门负责全美长途业务

at&t整合原贝尔电话公司

at&t收购西方电子研究部门并建立贝尔电话实验室,即贝尔实验室

at&t因垄断被拆分

at&t再次被拆分,贝尔实验室和设备制造部门被独立出来成立朗讯科技公司

阿尔卡特收购朗讯组成阿而卡特-朗讯,贝尔实验室也一起合并

贝尔实验室现在属于阿朗公司


2. 贝尔实验室与

贝尔实验室其实是专注于通讯领域的,但其对计算机软件领域的影响却也无与伦比。

1. b与unix

20世纪60年代,贝尔实验室的研究员ken thompson(肯·汤普森)发明了b语言,并使用b编了个游戏 - space travel,他想玩自己这个游戏,所以他背着老板找到了台空闲的机器 - pdp-7,但是这台机器没有操作系统,于是thompson着手为pdp-7开发操作系统,后来这个os被命名为 - unix
C语言、编程语言发展史

2. c

1971年,ken thompson的同事d.m.ritchie(dm里奇),也很想玩space travel,所以加入了ken thompson,合作开发unix,他的主要工作是改进thompson的b语言。

最终,在1972年这个新语言被称为c,取bcpl的第二个字母,也是b的下一个字母。
C语言、编程语言发展史

ken thompson(left)和d.m.ritchie(right)
C语言、编程语言发展史

3. c与unix

1973年,c主体完成。ken thompson和d.m.ritchie迫不及待的开始用c语言完全重写了unix。此时编程的乐趣已经使他们完全忘记了那个“space travel”,一门心思的投入到了unix和c语言的开发中。自此,c语言和unix相辅相成的发展至今。


c语言起源历史">3. 类c语言起源、历史

c语言、c语言的起源以及类似c语言的编程语言的历史太过冗长,我简单总结列表如下:

cpl(combined programming language) - 1963
cpl是1963年剑桥大学发明的

bcpl(base combined programming language) - 1967
剑桥的matin richards 对cpl做了简化,推出了bcpl

b(b programming language) - 1969
贝尔实验室的ken thompson(肯·汤普森) 对bcpl又做了改进,设计出了简单的且接近硬件的b语言,并用b语言写了第一个unix os

c(c programming language) - 1972
贝尔实验室的另外一个人dennis macalistair ritchie(d.m.ritchie - dm里奇)在b的基础上设计出了c语言。c 保持了b的优点(精炼、接近硬件),又克服了他的缺点(过于简单,数据无类型)

c++(c plus plus programming language) - 1983
还是贝尔实验室的人,bjarne stroustrup(本贾尼·斯特劳斯特卢普) 在c语言的基础上推出了c++,它扩充和完善了c语言,特别是在面向对象编程方面。一定程度上克服了c语言编写大型程序时的不足。

java(java programming language) - 1995
sun公司的patrick naughton的工作小组研发了java语言,主要成员是james gosling(詹姆斯·高斯林)

c#(c sharp programming language) - 2000
microsoft公司的anders hejlsberg(安德斯·海尔斯伯格)发明了c#,他也是delphi语言之父。

总结

随着时代和社会的发展,编程语言也跟着发生了很大的改变,旧有的语言不断的完善、添加新特性;同时,也有很多优秀的新编程语言出现。

一个个字符,随着敲击键盘的哒哒声,经由或是懵懂或是老练的程序员指尖的跃动,最终呈现为显示器上一行行的代码。它们就这样,一行接一行随着回车与换行不停的跳动。那,是眼前这个人悦动的灵魂,它一点一点、一行行慢慢的实现着屏幕前这个程序员的梦想,也一点点,一步步推动着时代的发展,社会的变迁。

hello world!

喎?>