Tradução livre do artigo What Languages Fix de Paul Graham para o Português.
Kevin Kelleher sugeriu um jeito interessante de comparar linguagens de programação: descrevê-las em termos dos problemas que elas resolvem. É incrível como muitas linguagens podem ser (muito bem) descritas desta forma.
Algol: linguagem de máquina é muito baixo-nível.
Pascal: Algol não possui muitos tipos de dados.
Modula: Pascal é muito fraco para programar sistemas.
Simula: Algol não é bom o bastante para simulações.
Smalltak: nem tudo em Simula é um objeto.
Fortran: linguagem de máquina é muito baixo-nível.
Cobol: Fortran dá medo.
PL/1: Fortran não tem muitos tipos de dados.
Ada: todas as linguagens existentes são incompletas.
Basic: Fortran dá medo.
APL: Fortran não é bom o bastante para manipular vetores.
J: APL requer um conjunto de caracteres próprio.
C: linguagem de máquina é muito baixo-nível.
C++: C é muito baixo-nível.
Java: C++ é gambiarra e a Microsoft vai nos massacrar.
C#: Java é de posse da Sun.
Lisp: Máquinas de Turing são um jeito esquisito de descrever computação.
Scheme: MacLisp é gambiarra.
T: Scheme não possui bibliotecas.
Common Lisp: há muito dialetos de Lisp.
Dylan: Scheme não possui bibliotecas e Lisp dá medo.
Perl: scripts em shell/awk/sed não são bons o bastante como linguagem de programação.
Python: Perl é gambiarra.
Ruby: Perl é gambiarra e Lisp dá medo.
Prolog: programação não é parecido o bastante com lógica.