English Version

编程语言修复了什么

凯文·凯勒her建议了一种比较编程语言的有趣方式:用每种语言所要解决的问题来描述它。令人惊讶的是,有多少语言可以用这种方式很好地描述。

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