时间:2017-9-9来源:本站原创作者:佚名

来源:STEAM解密

一张图让你了解编程语言发展史

我们都知道,编程语言是一组用来定义计算机程序的语法规则。它是一种被标准化的交流语言,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。尽管人们多次试图创造一种通用的程序设计语言,却没有一次尝试是成功的。之所以有那么多种不同的编程语言存在的原因是设计程序语言的初衷不同,对语言学习曲线的追求不同,不同程序之间的运行成本差异等。

下面这张图片描绘了整个编程语言的历史。包括各种编程语言的发明人,编程语言的特点和适用领域,被什么网站或公司使用等。

编程语言的历史早于真正意义的计算机的出现。19世纪就有"可编程的"织布机和钢琴弹奏装置出现,它们都是领域特定语言(DSL)的样例。

编程语言发展的编年史

我们一个统计出来种编程语言,当然,这么多的语言中只有一些是常用的或实用的。

–RegionalAssemblyLanguage–Autocode–IPL(LISP语言的祖先)–FLOW-MATIC(COBOL语言的祖先)–FORTRAN(第一个编译型语言)–COMTRAN(COBOL语言的祖先)–LISP–ALGOL–FACT(COBOL语言的祖先)–COBOL–RPG–APL–Simula–SNOBOL–CPL(C语言的祖先)–BASIC–PL/I–JOSS–BCPL(C语言的祖先)–Logo–B(C语言的祖先)–Pascal–Forth–C–Smalltalk–Prolog–ML–Scheme–SQL–C++(既有类的C语言,更名于年7月)–Ada–CommonLisp–MATLAB–Eiffel–Objective-C–Erlang–Perl–Tcl–Mathematica–FL–Haskell–Python–VisualBasic–Ruby–Lua–CLOS(ANSICommonLisp的一部分)–Java–Delphi(ObjectPascal)–JavaScript–PHP–WebDNA–Rebol–D–ActionScript–C#–VisualBasic.NET–F#–Groovy–Scala–Clojure–Go–Dart

从年年,人类一共发明了种编程语言,每一种语言的出现都带有某些新特征。编程语言不断的在革新,很快就会有超出这个清单的新编程语言出现

-JosephMarieJacquard用打孔卡为一台织布机编写指令,在挂毯上织出了“hello,world”字样。当时的reddit网友对这项工作的反响并不热烈,因为它既缺少尾递归调用,又不支持并发,而且甚至都没有注意在拼写时恰当地区分大小写。

Jacquard织布机是第一台可进行程序控制的织布机。用打孔卡进行编程的概念,直到电子计算机被发明出来之后仍然被广泛运用。

最早的HelloWorld程序(出自KRC)打印的是全小写的字符串:"hello,world"。

在许多英文技术社区里,不正确地使用大小写发贴会被视作是小白的行为。(如把“Python”拼作“python”,把“FreeBSD”拼作“freebsd”,把“Qt”拼作“QT”)

-AdaLovelace写了世界上第一个程序。她的努力只遇到了一点点小小的麻烦,那就是:实际上并没有任何计算机能够用来运行她的程序。后来的企业架构师们重新吸收了她的这个技能,用来学习如何更好地使用UML进行编程。

AdaLovelace为CharlesBabbage的分析机写了一个计算伯努利数的算法实现,因此被后世公认为是世界上第一个程序员。实际上,分析机由于其设计思想过于先进,在当时根本没有被制造出来。(Babbage的分析机一般被认为是现代电子通用计算机的先驱)

讽刺现在的某些“软件架构师”顶多只会纸上谈兵地画画UML。

-AlanTuring发明了世间一切程序语言的最终形态,但很快他就被英国军情六处“请”去当了,以至于他根本来不及为这些语言申请专利。

与通用图灵机(UniversalTuringmachine)等价的语言被称为图灵完备的(Turing







































怎样治白癫风
北京白癜风主治医院哪里好

转载请注明原文网址:http://www.helimiaopu.com/cxkf/5407.html

------分隔线----------------------------