Loading...

编程语言解决的问题

Original

2002年3月

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: 编程不够像逻辑。