各種編程語言們都能干什么
Kevin Kelleher提出了一種比較編程語言的優(yōu)劣的有趣的方式:用解決了何種問題來描述該語言。居然有這么多的優(yōu)秀的編程語言能被這么描述。
Algol: 匯編形式太底層
Pascal: Algol沒有足夠的數(shù)據(jù)類型去實(shí)現(xiàn)各種算法
Modula: Pascal對于系統(tǒng)級編程功能不夠強(qiáng)大
Simula: Algol不適合仿真應(yīng)用
Smalltalk: Simula不是完全的面對對象編程
Fortran: 匯編形式太底層
Cobol: Fortran 語言太可怕
PL/1: Fortran 沒有足夠的數(shù)據(jù)類型
Ada: 其他語言總感覺缺點(diǎn)什么
Basic: Fortran 語言太可怕
APL: Fortran處理數(shù)組問題不夠強(qiáng)大
J: APL 需要它自己的字符集
C: 匯編太底層
C++: c語言太底層
Java: C++太混亂,且微軟還想吃掉我們
C#: JAVA是被Oracle(Sun)控制的
Lisp: 用圖靈機(jī)形式描述太復(fù)雜笨拙
Scheme: MacLisp太混亂
T: Scheme沒有函數(shù)庫
Common Lisp: 有太多的Lisp的語言影響
Dylan: Scheme沒有函數(shù)庫,語法太亂
Perl: 不太能滿足編程的需求
Python: Perl太恐怖
Ruby: Perl太恐怖,且Lisp語法太恐怖
Prolog: 其他語言在邏輯等方面不夠強(qiáng)大