Loading...

言語が解決する問題

Original

March 2002

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: シェルスクリプト/awk/sed はプログラミング言語に似ていない。

Python: Perl はごちゃごちゃしている。

Ruby: Perl はごちゃごちゃしていて、Lisp の構文は恐ろしい。

Prolog: プログラミングは論理に似ていない。