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