C语言的历史

来源:互联网 发布:淘宝日本直邮是真的吗 编辑:程序博客网 时间:2024/05/10 23:46

C语言是我学习的第一门编程语言,现在还依稀记得初识C语言时的那种茫然却新奇之感。但与我学习C语言的经历相比,C语言本身的历史更显得恢宏而瑰丽。

C语言源起于1960年Alan J.Perlis在巴黎召开的软件专家讨论会上提出的Algol 60程序设计语言。Algol 60引入了许多新的概念包括局部性、动态、递归和巴科斯-诺尔范式BNF,对后续程序设计语言产生了重大而深远的影响,成为包括C语言在内的众多高级程序设计语言的原型。然而,Algol 60语言缺乏对硬件操作的支持,例如没有提供输入和输出相关指令,因此在系统程序的开发上存在着局限性。

1963年,在Algol 60的基础上,英国剑桥大学设计了程序设计语言CPL(Combined Programming Language). CPL解决了Algol 60远离硬件的问题,支持通过操纵硬件来开发系统程序。然而,CPL的设计过于复杂,规模庞大,难以实现。1967年,剑桥大学的Matin Richards对CPL进行了简化,推出了BCPL(Basic CPL)程序设计语言。

1970年美国贝尔实验室的Ken Thompson需要为PDP-7开发一个操作系统。当时大多数操作系统都是汇编语言编写的,易读性和可移植性都比较差。Ken Thompson不想用汇编语言,又发现BCPL用起来也不顺手,就对BCPL进行了进一步简化,B语言应运而生。B语言精炼而且接近硬件,但是又过于简单,与BCPL一样,数据没有类型。运行于PDP-7上的操作系统也成为Unix操作系统基于B语言的版本。

1971年,同在贝尔实验室的Dennis Ritchie加入Unix项目,并开始利用B语言开发运行于PDP-11的操作系统。然而Ritchie在开发过程中发现B语言存在着非常不适合PDP-11的问题(很难自然地访问字符数据类型),为此Ritchie对B语言进行了升级,最显著的变化是为变量添加了数据类型。起初这种新程序设计语言被称为NB(New B),后来它远远地脱离了B语言,最终被命名为C语言。

之后,C语言不断发展完善,并被标准化,到目前为止,仍是最受欢迎的程序设计语言之一。

参考文献

  • K.N. King 著,吕秀峰 译. C语言程序设计-现代方法. 人民邮电出版社
  • https://en.wikipedia.org/wiki/ALGOL_60
  • https://en.wikipedia.org/wiki/CPL_(programming_language)
  • https://en.wikipedia.org/wiki/BCPL
  • https://en.wikipedia.org/wiki/B_(programming_language)
  • https://www.coursera.org/course/pkuic
0 0
原创粉丝点击