FORTRAN & LISP

    前不久,我看到GRAMHAM关于语言的文章,让我对语言的类别进行了更深的思考,在去探求目前流行的语言的时候,咱们应该了解下她的原由。对于原由,至关于解决一下几个问题: javascript

  •     1.语言解决的问题;
  •     2.这种语言为何在当时流行起来
  •     3.这种语言是否会消失,消失的缘由是什么,不会消失的缘由是什么;
  •     4.针对相似问题,同时期的解决方案(同时期创造的语言)

因此GRAMHAM在文中谈到了FORTRAN和LISP,两种古老的语言。一种却正在消失,另外一种看起来正在流行。做者表达了FORTRAN和LISP的设计理念是彻底不一样的。前者表示依赖于硬件,可以与硬件交流的语言;后者则表示依赖于数学上的语义,而这种语义在计算机中是如何表现的。 java

    故对于编程也有两种方式,一种是基于一种语言的特性,利用这种特性,来知足程序的设计;另外一种则是增长这种语言的特性,使需求复杂而特殊的性质,转化为一种语言的特性,而利用这种特性,能够简化需求的设计。用一种通俗的说法,前者的编译器是可改变的,然后者的解释器能够重写。而语言特性是依赖于编译器(或者解释器)的设计。 python

    目前,咱们使用的主流的语言如c,c++,java等都是不能够用自己的语言区改变这门语言的特性;而函数式的语言每每能够本身从新定义解释器,例如common lisp,scheme等等。而还有不少语言都在从前一种语言到后一种语言进化(尽管lisp是一门很古来的计算机语言)。例如,ruby,python,javascript等等解释性语言。 c++

注:fortran并非正在消失,也许是由于硬件架构的改变,它正变成其余高级语言,例如c,c++;lisp也并非一成不变,它同时也产生了不少方言(dialect),例如scheme,elisp,clisp等等。初看时,前者的改变让咱们没法认识,然后者倒是如此的类似;再看时,前者却没有变,然后者已不是之前。 编程

相关文章
相关标签/搜索