どの言語が何を修正するか
Original2002年3月
ケビン・ケレハーはプログラミング言語を比較する興味深い方法を提案しました。それは、各言語を解決する問題の観点から説明することです。驚くべきことに、どれだけ多くの言語がこのように説明できるか、そしてどれだけうまく説明できるかです。
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はサンによって管理されている。
Lisp: チューリングマシンは計算を説明するには不便な方法だ。
Scheme: MacLispは手抜きだ。
T: Schemeにはライブラリがない。
Common Lisp: Lispの方言が多すぎる。
Dylan: Schemeにはライブラリがなく、Lispの構文は怖い。
Perl: シェルスクリプト/awk/sedはプログラミング言語に似すぎていない。
Python: Perlは手抜きだ。
Ruby: Perlは手抜きで、Lispの構文は怖い。
Prolog: プログラミングは論理に似すぎていない。