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维基书使用的模板

其他教程 编辑

附加资源 编辑