Haskell簡介

Haskell是一種函數式編程語言,專門設計用於處理符號計算和列表處理應用程式。函數式編程基於數學函數。除了Haskell,其他遵循函數式編程範式的其他流行語言包括:Lisp,Python,Erlang,Racket,F#,Clojure等。

在常規編程中,指令視為採用特定語法或格式的一組聲明,但是在函數式編程下,所有計算都視為獨立數學函數的組合。

使用Haskell函數編程

Haskell是一種廣泛使用的純功能語言。在這裏,我們列出了幾點使Haskell語言與其他常規編程語言(例如Java,C,C++,PHP等)如此不同的地方。

  • 函數式語言 - 在傳統的編程語言中,指示編譯器執行一系列任務,這些任務僅告訴電腦“該做什麼”和“該怎麼做”。但是在Haskell中只告訴電腦“這是什麼?”。
  • 懶惰 - Haskell是一種懶惰的語言。懶惰的意思是,Haskell不會馬上地評估計算運算式。當評估計算引擎發現一個運算式需要評估時,它會創建一個thunk數據結構以收集該特定評估所需的所有資訊以及指向該thunk數據結構的指針。評估計算引擎僅在需要評估特定運算式時才開始工作。
  • 模組化 - Haskell應用程式是一系列功能。Haskell應用程式是許多小型Haskell應用程式的集合。
  • 靜態類型 - 在常規編程語言中需要定義一系列變數及其類型。而Haskell是嚴格類型化的語言。用嚴格類型化語言來表示,Haskell編譯器足夠智能,可以弄清楚聲明的變數的類型,因此無需明確提及所使用的變數的類型。
  • 可維護性 - Haskell應用程式是模組化的,因此,維護它們非常容易且具有成本效益。

函數式程式的併發性更高,它們在執行時遵循並行性,以提供更準確和更好的性能。Haskell也不例外。它以有效處理多線程的方式開發。

Hello Word程式

這是一個簡單的例子來演示說明Haskell的動態性。下麵的代碼只需要一行即可在控制臺上列印"Hello Word"

main = putStrLn "Hello World"

Haskell編譯器解釋並執行以上代碼,便會立即產生以下輸出 -

Hello World

在本教學中,我們將提供大量示例,以演示Haskell的強大功能和簡單性。


上一篇: 下一篇: Haskell開發環境配置