我覺得我的評論有些問題了。我曾在gigix的blog中說:感覺沒什么東西非用functional的語言不可的,以前也了解過lisp和haskell,感覺沒有什么出奇偉大的事情。語法上的便利很容易被大家的不熟悉抵消掉。
這顯然是廢話。其實計算機能做的事情完全是受限于其硬件,有什么傳感器,有什么存儲器,有什么CPU。你用機器語言,用匯編,用什么寫都不能寫處超出硬件所支持的(直接和間接的)功能來。所以我失望啊,我居然做了一句如此廢話的評論![]()
But,那么要各種語言來干什么?我覺得一個是為了更快,一個是為了更強。更快當然不是為了讓CPU更快,程序的速度的上限是受到問題本身和CPU速度限制的,而這個上限雖然在大多數情況下并無法計算,但是它確實存在。我們為了更快,是為了能夠更快的寫出解決問題的軟件。無論人們爭論用計算機是來干什么,但是解決問題,做事實是肯定是正確的目標。所以,各種語言的出現都是為了能讓程序員更快的解決問題。
更強是讓程序員能處理更大規模的問題。管理復雜度是程序員主要的工作,也是軟件實現主要要解決的問題。程序語言很大程度上就是讓程序員能管理更大規模問題的復雜度。
如果這兩個目標(更快更強)得到承認,那么我們就能看破一切語言之間的宗教紛爭。只要能讓程序更快的寫出東西,寫出更強的東西的,那就是好的。其他的花花草草都是不好的。雖然這樣說得有些絕對,但是絕對的不是在于尺子。絕對的在于人們如何用尺子去比量東西,很多時候我們是用過度絕對的眼光去做比較,比如n年前,我們說元模型是一種浪費,怎么怎么的。這個就是我們沒有看到趨勢,看到未來的發展。但是尺子還是對的,它現在確實是能夠符合尺子的規范,只是我們當年(假設哈,
)用尺子去比較的時候出了問題。
至少目前我還是覺得我心目中的尺子(更快更強)是沒有什么問題的。大家或許還能提出包含更多內容的尺子,或許我說的太偏激了。不過沒關系,請朋友們指出來,正好學習學習。
公告
浙公網安備 33010602011771號