【C语言的名字由来】
按照惯例,编程语言一般都会有一个或霸气(python:蟒蛇),或犀利(Go),或文艺范(java)的名字,至少是一个看上去像单词的名字-不论是否之前就有这个现成的单词,抑或是人为拼凑的一个单词或缩写。
C语言是一个例外(当然C 也是),只有一个简简单单的字母。
它命名的原因就和它的应用场合一样普通:有一个表哥叫B语言,所以像某个简洁的族谱上安排的一样,它被叫做C。
【C语言的诞生】
它的爸爸是Dennis M.,那个被人称作C语言之父的犀利欧巴,当然他还有一个更如雷贯耳的诨名:Unix之父!
曾在哈佛大学学习物理学和应用数学,在那个年代,计算机看上去还是一门和物理数学联系非常紧密的学科,所以顺理成章的在专业范围内接触到了计算机学科。
好像江湖小菜鸟突然掉下了悬崖,不但没摔死,反而找到了一本绝世秘籍一样,对自己是如何入门的描述也类似这样的桥段,完全是偶然因素致使他走上了计算机专家的道路。事实到底如何我们无从得知, 反正在离开学校以后,就加入到了当时大名鼎鼎的贝尔实验室,并在以后逐渐走上了系统软件领导人的道路。
在贝尔实验室,遇到了一生的好基友Ken 。当时还只是一个小小的研究员的Ken貌似工作比较闲,已经初步显露大神端倪的Ken不甘寂寞,于是决定找点事情做:写一个游戏。这和当今大多数程序员的业余爱好有点相像,唯一的区别就是,那个时候的程序员大叔们还是比较苦逼的,没有现在那么多丰富的开发调试设备可以用,于是他找到了一台闲置的,姑且叫做电脑的玩意儿吧。
Ken决定着手开发游戏,but!这台老古董还只是一堆拼接的电路板,没有任何系统和软件,于是ken决定先装一个……当然,这是我开玩笑的,Ken这么单纯的孩子是不会有我这么邪恶的想法,于是他决定,先写一个操作系统(你看,大神的世界里,解决问题就是这么的单纯),于是(就是这么自然的……)他完成了一个操作系统,这个操作系统被人们叫做Unix……当然,过程中的一些障碍,比如说Ken觉得以前的编程语言有点影响他开发,于是他重新开发了一套编程语言(没错,就是C语言的大哥,B语言),这种小事情简直就有点不值一提了。
后来Ken可能觉得,自己的重要职责应该是开发一个小游戏,像写操作系统这种小儿科的事情,实在是占用了他太多的时间,于是顺便组队(像不像飘柔般顺滑?)……也是一个单纯的孩子啊?他理所当然的认为,既然Ken叫我来开发操作系统,那么自己一定要把它做好,于是他改进了B语言,发明了C语言(等等c语言之父是谁,这里逻辑好像有点乱吧)……
于是两个好基友开始不断完善着C语言和Unix操作系统,然后终于成功的忘记了他们之前想要开发的游戏……这简直就是两个“误入歧途”的倒霉孩子的典型啊!
【C语言的发展】
不可否认,C语言有一个让人瞠目结舌、充满喜剧情结的前世,但是这也好像是这个行业无数无心插柳的示例中的一个缩影而已,类似的事情我们仿佛还能说出来许多,比如说辍学的孩子在自己家的车库摆地摊,比如说后来的Linux……这就是科技行业的魅力吧,无数热爱技术的大神们,释放了全身的洪荒之力,也没能在自己的领域内有所出类拔萃的建树,却往往是偶尔的无心之举,反而在不断的推动着社会的进步,科技的发展,改变了人们的生活……
当然和Ken的故事还在继续,他们可能基于各种实际的困难(我猜想……),比如说原来的原型机坏掉了,或者两个人使用的开发机器不一样,所以新完成的操作系统需要安装到新的或者不同的机器上面,于是两个人开始考虑起来了操作系统的移植,最终推动了C语言c语言之父是谁,变成了一门在当时是移植性非常好的语言。
于是C语言的不断发展,组成了它的今生。
像《The C 》这本书(就是传说中的K&R),也顺理成章的在1978年出生了。后来的故事可能大家都耳熟能详了,C语言有了自己的标准,成立了委员会,专家组,帮助开发了其他更多的著名的软件或系统。
然后基本上散落在各个角落的各个高校的每个天朝计院的孩子们,都在简陋的TC里面写下过自己的第一个C语言程序:
“Hello World!”
本文共 1383 个字数,平均阅读时长 ≈ 4分钟