什么语言解决了什么问题

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++ 是一个蹩脚的解决方案。而且 Microsoft 将会击垮我们。

C#: Java 被 Sun 控制。

Lisp: 图灵机是描述计算的一种笨拙的方式。

Scheme: MacLisp 是一个蹩脚的解决方案。

T: Scheme 没有库。

Common Lisp: Lisp 的方言太多了。

Dylan: Scheme 没有库,而且 Lisp 语法很可怕。

Perl: Shell 脚本/awk/sed 不够像编程语言。

Python: Perl 是一个蹩脚的解决方案。

Ruby: Perl 是一个蹩脚的解决方案,而且 Lisp 语法很可怕。

Prolog: 编程不够像逻辑。