當前位置:編程學習大全網 - 行動軟體 - Lisp 和 Haskell 各有什麽優缺點?學哪個好

Lisp 和 Haskell 各有什麽優缺點?學哪個好

思維方式而言,兩者相差並不多。考慮到函數式編程並不是如今程序開發的主流,無論是 Lisp 還是 Haskell,它們和主流工程實踐都相差很多。但具體到函數式程序設計語言之間,基本的思路是類似的。函數式程序設計的風格的實質:去除賦值的副作用,自包含上下文的高階函數,以「值」的流動而不是操作的變化為中心設計程序,這在兩門語言中都是壹樣的。當然,在細節上兩門語言仍然有區別:Lisp 的宏展開,弱類型/動態類型,Haskell 的惰性求值,強類型,都有各自的區別。具體開始使用時,需要註意其特性才能用好。

在社區上,Lisp 有固定的社區,但由於大量 Lisp 方言的存在,導致如今的分裂得很厲害。除了 Common Lisp 這個大型社區外,還有各種小型 Lisp 社區,星羅棋布。這使得 Lisp 社區事實上很難形成合力做出壹個各個方言通用的平臺——是的,即使 Common Lisp 是最大的社區,從源流上看,它也依然是方言之壹。我必須承認,這壹點上 Haskell 要好得太多。Haskell 的社區通過 http://www.haskell.org 很好地被統壹在壹起,無論是教學還是開發,都容易集合整個社區的力量。

談到工程領域,至少目前為止,Haskell 社區在宣傳時壹直是將其定位為壹門通用程序設計語言的。但恕我直言,現在這個社區還沒有找到真正適合自己的工作場景,或者說,這個社區的成熟程度還不足以支撐壹個適合自己的工作場景。在我的眼裏,這個社區的核心,仍然是壹門玩具語言。反觀 Lisp 社區,他們的應用場景簡單而專註:符號推演和人工智能;與此同時,許多 Lisp 方言也將自己的觸角伸進實際工程領域,配合其他語言使用。也有 Emacs 和 Gimp 這樣各自領域內公認的通用軟件。

  • 上一篇:好看的韓國古裝劇
  • 下一篇:WOW不同種類的武器之間能幻化麽?
  • copyright 2024編程學習大全網