Haskell :: 帶類型的函數式編程

編輯


 

Haskell 是一種函數式編程語言。如果學過編程,並想了解 Haskell 如何工作以及和其它編程語言有何不同,你可以看一下概述

Haskell 有兩大特點。第一,它是純函數性的。如果一個函數在不同的環境下以相同的參數調用兩次,那麼這兩次的返回值是完全相同的。第二,Haskell提供了一個結合了諸如類型類(typeclasses)和泛代數數據類型(generalized algebraic data types)等特徵的非常現代化的類型系統。現在你並不需要了解以上術語的含義,但我們非常希望你看完本書後能融會貫通。那麼,為何 Haskell 用戶喜愛這種語言?僅僅是因為它的獨特和先進嗎?不,是因為它的純函數性能讓Haskell程序員更好地理解程序,從而保證程序正確無誤。尤其是在一個先進的類型系統的幫助下,我們能夠發現更多的錯誤,無論是簡單的還是複雜的。

本書將向你介紹 Haskell 語言的最基礎的知識和大多數的高級特性,同時也包含計算機編程的通用技能。對於有經驗的程序員,我們力薦你耐心的看完這些。很可能,你最熟悉的編程語言和 Haskell 有極大的不同,對這些語言的了解讓你更加難以理解 Haskell 的工作方式:簡單而又與眾不同。那麼,把這當作一次在異世界的冒險,以數學的眼光來看待編程吧!


概述

編輯

本書分為三部分:初學、進階和實踐。最後一部分涵蓋了更多日常運用 Haskell 時的問題,只要有初學者的知識就可以看了。

請作出貢獻!無論 Haskell 技術如何,每個人都可以幫忙。花費五分鐘改進一個模塊可以節省他人數小時的時間。詳情見貢獻者須知

入門教程

編輯

這部分介紹了最基礎的內容和一些最常用的庫。然後你就可以寫一些簡單的程序,並為更進一步做好了準備。

絕大多數章節都包含練習,通過這些練習你能學會 Haskell 最新的特性。在每一章的結尾都有練習答案的鏈接,你可以對照答案檢查自己的解答是否正確。

Haskell基礎

編輯

初級Haskell

編輯

Haskell進階

編輯

Monads

編輯

高級教程

編輯

這一部分將介紹更多函數式編程的概念,例如數據結構和類型理論,也將涵蓋更多像並行計算這樣的實用主題。

高級Haskell

編輯

類型的樂趣

編輯

理論提升

編輯

Haskell性能

編輯

Haskell實務

編輯

這部分涵蓋了更多日常運用 Haskell 時遇到的問題,如使用標準庫,創建圖形界面或使用數據庫。你可以直接從基本階段跳到這裡閱讀。

程序庫參考

編輯

普通實務

編輯

專門任務

編輯

附錄

編輯
習題解答
語法糖
作者及致謝
貢獻者須知
任務列表
這本Haskell維基書使用的模板

其他教程

編輯

附加資源

編輯