朋友 Kevin Kelleher 向我建议了一个比较各种编程语言的有趣方法:看看它们各自都是来解决什么问题的。可问题是,像这样去描述,你可以罗列出无数的语言,而且你可以使用各种的角度来描述。
Algol: 汇编语言太低级了。
Pascal: Algol 语言缺少足够的数据类型。
Modula: Pascal 语言对于系统应用编程来说太弱了。
Simula: Algol 语言在仿真模拟方面不够好。
Smalltalk: Simula 语言里并不是所有的东西都是对象。
Fortran: 汇编语言太低级。
Cobol: Fortran 语言不好用。
PL/1: Fortran 语言缺少足够的数据类型。
Ada: 所有现存的编程语言都有缺失。
Basic: Fortran 语言不好用。
APL: Fortran 语言在数组操作上不好用。
J: APL 语言需要自己的字符集。
C: 汇编语言太低级。
C++: C语言太低级。
Java: C++太笨重。微软在压迫我们。
C#: Java 是 Sun 公司控制的。
Lisp: 用图灵机方式描述计算机计算太别扭。
Scheme: MacLisp 语言太笨拙。
T: Scheme 语言没有程序库。
Common Lisp:Lisp 语言的方言太多了。
Dylan: Scheme 语言没有程序库,Lisp 语法太疯狂。
Perl: Shell 脚本/awk/sed 都不像编程语言。
Python: Perl 语言太让人受不了。
Ruby: Perl 语言太笨拙,Lisp 语法太疯狂。
Prolog: 编程不够逻辑。
英文原文链接:What Languages Fix