点击上方蓝字置顶「IT技术实战营」公众号 绝不错过行业技术干货! 滑溜溜:“计算机语言千千万,真不知道那些天才们怎么学的。” 白胖胖:“天啊,这么多。你都会吗? 滑溜溜:“怎么可能……” 白胖胖:“这么多是怎么来的啊?” 当白胖胖知道“世界上有600多种计算机语言”的时候,三观又被颠覆了。 “600多种计算机语言……那是不是得有600多个人发明了这些语言?”白胖胖想。 想必有些程序员们也很困惑,怎么这么多计算机语言? 人类智慧无穷尽,难道真的如白胖胖所言,每个语言都有自己的发明者?或许,是什么外星现象? 写了一天代码,头脑页疲乏了,不如打盆热水泡泡脚,顺便来看看编程发展史,计算机语言到底经历了哪些变革才成为现在程序员们熟悉的代码? 快来瞧瞧吧! 十九世纪 第一个编程语言比第一个现代计算机诞生(1946)还早。 1801- Joseph Marie Jacquard用打孔卡为一台织布机编写指令,在挂毯上织出了“hello world”字样。 Jacquard织布机是第一台可进行程序控制的织布机。用打孔卡进行编程的概念,直到电子计算机被发明出来之后仍然被广泛运用。 Joseph Marie Jacquard 1842- Ada Lovelace写了世界上第一个程序。她的努力只遇到了一点点小小的麻烦,那就是:实际上并没有任何计算机能够用来运行她的程序。后来的企业架构师们重新吸收了她的这个技能,用来学习如何更好地使用UML进行编程。 Ada Lovelace为Charles Babbage的分析机写了一个计算伯努利数的算法实现,因此被后世公认为是世界上第一个程序员。 二十世纪 1936 - Alan Turing发明了世间一切程序语言的最终形态,但很快他就被英**情六处“请”去当007了,以至于他根本来不及为这些语言申请专利。 与Universal Turing machine等价的语言被称为Turing completeness,它定义了“什么样的语言可以被称作是程序语言”。 1936 - Alonzo Church同时也发明了世间一切程序语言的最终形态,甚至做得更好。但他的λ演算被绝大部分人忽视了,因为它与C语言“不够像”。尽管存在着这样的批评,但事实上,C语言在当时还没有被发明出来。 Alonzo Church 1940年代- 一些直接采用布线和开关来进行程序控制的“计算机”出现了。工程师们当时这么做,据说是为了避开“用空格还是用制表符缩进”这样的论战。 1957- John Backus和IBM发明了FORTRAN语言。关于IBM或FORTRAN并没有什么特别好笑的地方。除了,写FORTRAN程序的时候不系蓝领带将被编译器视作是一个syntax error。 蓝领带、白衬衫、深色西装似乎是IBM公司20世纪经典的装束。 早期FORTRAN(FORTRAN 77)对程序书写格式的要求相当严格。 John Backus (left) 1958- John McCarthy和Paul Graham发明了LISP。由于冷战期间的战略括号资源储备所造成的巨大成本,LISP从未流行过。尽管欠缺足够的流行度,LISP(现在叫做“Lisp”,有时叫“Arc”)仍然被视作一门有影响力的语言。 1959- 在输掉了和L. Ron Hubbard之间的一场打赌之后,Grace Hopper和其他几个大牛们发明了所谓的“面向Boilerplate的全大写化语言(Capitalization Of Boilerplate Oriented Language,COBOL)”。 1964- John Kemeny和Thomas Kurtz创造了BASIC,一个为非计算机科学家设计的非结构化的程序语言。 John Kemeny and Thomas Kurtz 1970- Guy Steele和Gerald Sussman创造了Scheme。 1970- Niklaus Wirth创造了Pascal,一个过程式的语言。很快就有人开始声讨Pascal,因为它使用了类似“x := x y”这样的语法,而不是更为人熟知的类C语法“x = x y”。 1972- Dennis Ritchie发明了C语言和Unix。 1972- Alain Colmerauer设计了逻辑编程语言Prolog。他的目标是创造一个具有两岁小孩智商的程序语言。为了证明他成功达到了这个目标,他展示了一个Prolog程序,它对于每条查询都会机智地给出相同的回答:“No”。 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|