Kaynak: http://paulgraham.com/fix.html
Yazar: Paul Graham
Çeviren: Ozan Sülükpınar
Kevin Kelleher, programlama dillerini karşılaştırmak için ilginç bir yöntem önerdi: Her birini çözdükleri problem ile tanımlamak. Şaşırtıcı olan şey ise, kaç tane programlama dilinin bu şekilde ve ne denli iyi tanımlandığı idi.
Algol: Assembly dili çok düşük seviyeli bir dil.
Pascal: Algol, yeterince veri tipine sahip değil.
Modula: Pascal, sistem programlaması için çok zayıf.
Simula: Algol, simulasyonlarda yeterince iyi değil.
Smalltalk: Simula'daki her şey bir obje değil.
Fortran: Assembly dili çok düşük seviyeli bir dil.
Cobol: Fortran korkutucu.
PL/1: Fortran yeterince veri tipine sahip değil.
Ada: Var olan bütün diller bir şeyleri gözden kaçırıyor.
Basic: Fortran korkutucu.
APL: Fortran, dizileri manipüle etmek için yeterince iyi değil.
J: APL kendi karakter setini gerektiriyor.
C: Assembly dili çok düşük seviyeli bir dil.
C++: C çok düşük seviyeli bir dil.
Java: C++ tam bir yama. Ve Microsoft bizi ezecek.
C#: Java güneş tarafından kontrol ediliyor.
Lisp: Turing Makinaları hesaplamayı açıklamak için tuhaf bir yöntem.
Scheme: MacLisp tam bir yama.
T: Scheme hiç kütüphaneye sahip değil.
Common Lisp: Lisp'in çok fazla lehçesi var.
Dylan: Scheme hiç kütüphaneye sahip değil ve Lisp'in söz dizimi korkutucu.
Perl: Shell'in komut dizisi programlama dilleri için yeterli sayılmaz.
Python: Perl tam bir yama.
Ruby: Perl tam bir yama ve Lisp'in söz dizimi korkutucu.
Prolog: Programlama, mantık kadar yeterli bir şey değil.
Kevin Kelleher suggested an interesting way to compare programming languages: to describe each in terms of the problem it fixes. The surprising thing is how many, and how well, languages can be described this way.
Algol: Assembly language is too low-level.
Pascal: Algol doesn't have enough data types.
Modula: Pascal is too wimpy for systems programming.
Simula: Algol isn't good enough at simulations.
Smalltalk: Not everything in Simula is an object.
Fortran: Assembly language is too low-level.
Cobol: Fortran is scary.
PL/1: Fortran doesn't have enough data types.
Ada: Every existing language is missing something.
Basic: Fortran is scary.
APL: Fortran isn't good enough at manipulating arrays.
J: APL requires its own character set.
C: Assembly language is too low-level.
C++: C is too low-level.
Java: C++ is a kludge. And Microsoft is going to crush us.
C#: Java is controlled by Sun.
Lisp: Turing Machines are an awkward way to describe computation.
Scheme: MacLisp is a kludge.
T: Scheme has no libraries.
Common Lisp: There are too many dialects of Lisp.
Dylan: Scheme has no libraries, and Lisp syntax is scary.
Perl: Shell scripts/awk/sed are not enough like programming languages.
Python: Perl is a kludge.
Ruby: Perl is a kludge, and Lisp syntax is scary.
Prolog: Programming is not enough like logic.