编程语言的派生顺序是什么?

时间:2010-03-31 00:42:39

标签: programming-languages language-history

例如,我知道基本上所有基于面向对象的语言基本上都是C#或C ++的衍生物吗?有谁知道他们的订单?像C - >; C ++ - > C# - > PHP等。

3 个答案:

答案 0 :(得分:9)

我知道我的古代历史,而不是我最近的历史。

程序语言植根于FORTRAN,FORTRAN是第一种将任意复杂的高级公式编译为机器代码的语言。 FORmula TRANslator(约翰巴克斯,图灵奖)。

程序性语言可能已达到与Algol-60(委员会)的顶峰。

Algol-60的重要衍生物包括Simula-67和Pascal,以及Pascal,Ada,Modula和Oberon家族。也许CLU也受到了影响。

所有面向对象的语言都源于Simula-67 ,这是一种Algol衍生物(Nygaard和Dahl,图灵奖获奖者)。

Smalltalk-80和C类(成为C ++)都受Simula-67的直接影响。我不知道Objective-C是直接受Simula影响还是间接受Smalltalk影响。同样德尔福。 Self和Ruby都具有强大的Smalltalk传统。 Java具有强大的Simula / C ++传统; C#具有很强的Java传统。

功能语言植根于LISP,用于LISt处理器(John McCarthy,图灵奖获得者)。功能语言也受到约翰巴克斯的图灵讲座的强烈影响,他在讲座中询问编程是否可以逃避冯·诺伊曼的变异编程模型,一次一个字。发生了很大的开花,包括APL,ISWIM,Hope,ML和Miranda。然后,Clean,Haskell,Objective Caml。再后来,Clojure,Scala和F#。

然后我们有了利基球员:

  • 字符串处理语言,如SNOBOL和Icon

  • 基于替换的语言,如TRAC,sh,TeX,Tcl和PHP

  • 动态后缀语言,如FORTH和PostScript

  • Prolog和Mercury等逻辑语言

我不会继续。

答案 1 :(得分:5)

答案 2 :(得分:1)

以下是图形格式的历史记录:http://www.levenez.com/lang/