Haskell

維基教科書,自由的教學讀本

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維基書使用的模板

其他教程[編輯]

附加資源[編輯]