隨著多核處理器普及,C++/C#/java這類過程式語言早晚要走向沒落。

來源: 2010-10-28 17:36:36 [舊帖] [給我悄悄話] 本文已被閱讀:

現在計算機已經越來越背離傳統的馮.諾意曼計算機了。過程式語言不適合並行計算。

Niklaus Wirth設計了Pascal語言。他有個著名的論點: 算法 + 數據結構 = 計算機
程序。如果編譯器能聰明到理解算法,找出其中可以並行計算的部分。這樣應用軟
件從串行計算過渡到並行計算時不用重新改寫。我十幾年前就看到不少人在做這方
麵的工作,但沒見到有實用的編譯器問世。所以過程式語言早晚要走向沒落。

Robert Kowalski是邏輯程序設計的開創人之一。他提出:邏輯 + 控製 = 算法。如
果程序員隻負責算法的邏輯部分,由計算機來負責算法的控製部分,計算機可以根
據需要,把一個大任務分解成若幹小任務,分配給數個處理器執行。那麽應用軟件
從串行計算過渡到並行計算頂多隻是重新編譯一下的事。