跳到正文
Haskell China
首页 下载&安装 文档
加载中…

为你推荐

  • 类型与错误处理:Maybe / Either
  • 惰性与流式处理:从列表到管道
  • 类型类与抽象:如何设计可复用接口
  • 工具链:GHCup / Cabal / HLS

最近阅读

    这里整理了各类 Haskell 学习与参考资源,请根据自身需要获取。其中包括一些只提供书名但未提供链接的,请自行网上搜索。

    如果你刚开始接触 Haskell,不确定从哪里入门,我们推荐 CIS194(宾夕法尼亚大学的 Haskell 入门课程):免费、体系完整、偏实践,会从基础一路带到语言的进阶特性。

    入门书籍

    • Learn You a Haskell for Great Good!
    • Real World Haskell
    • Learn Haskell by building a blog generator

    进阶书籍

    • Developing Web Applications with Haskell and Yesod
    • Parallel and Concurrent Programming in Haskell

    课程

    由授课教师整理的课程资料

    • Well-Typed’s Introduction to Haskell
    • University of Pennsylvania’s CIS 194
    • Data61 (NICTA) Functional Programming Course
    • Stanford’s cs240h
    • Hendrix’s CSCI 360
    • University of Helsinki’s Haskell MOOC
    • University of Nottingham’s introductory Haskell course
    • University of Nottingham’s advanced Haskell course

    教程

    短小精悍、经典入门的学习方式

    • A Gentle Introduction to Haskell
    • Happy Learn Haskell Tutorial
    • Yet Another Haskell Tutorial
    • Write Yourself a Scheme in 48 Hours
    • Write Yourself a Scheme 2.0
    • Haskell Beginners Course 2022

    在线资源

    由社区维护的资源汇总:

    • The Haskell Wiki
    • The Haskell Wikibook
    • FP Complete’s School of Haskell
    • Stephen Diehl’s What I Wish I Knew When Learning Haskell
    • Chris Allen’s List of Learning Haskell Resources
    • Bob Ippolito’s Getting Started with Haskell
    • Albert Y.C. Lai’s Haskell Notes and Examples
    • Learning Haskell Resources on the Haskell Wiki

    手册与指南

    涵盖常用 Haskell 工具的手册与指南:

    • GHC User’s Guide
    • Cabal Homepage And Quick Links
    • Cabal User Guide
    • Haskell Language Server
    • Stack User Guide
    • Haddock User Guide
    • Haskeleton: A Haskell Project Skeleton
    • How to Write a Haskell Program

    包与依赖管理

    Cabal 指南是一个不错的起点,但这一块还有很多值得深入:

    • Stephen Diehl’s Cabal Quickstart
    • The Storage and Interpretation of Cabal Packages
    • The Cabal of Cabal

    库文档

    Haskell 库的文档通常在 Hackage 上发布。你也可以使用一些专门的工具进行检索,不仅能按名称找,还能按类型签名搜索。

    • Hoogle API Search
    • Hackage
    • Stackage (with API Search)
    • The Typeclassopedia
    • Haddocks for Libraries included with GHC

    语言规范

    Haskell 2010 语言报告可以在线阅读(HTML/PDF),源码也可在 GitHub 获取。GHC 与报告之间的差异,可参考 GHC User’s Guide。

    • Haskell 2010 语言报告(在线)
    • haskell-report(GitHub)

    小提示

    想快速开始学习 Haskell?可以先看一下 入门指南。

    推荐安装方式

    适用于 Linux、macOS、FreeBSD、Windows 或 WSL2

    使用 GHCup 安装 GHC、cabal-install、Stack 和 haskell-language-server(可选)。查看 安装说明。

    了解 Haskell 工具链

    Haskell 工具链通常包含以下工具:

    • GHC:Glasgow Haskell Compiler(编译器)
    • cabal-install:Cabal 的安装与构建工具,用于管理 Haskell 项目
    • Stack:跨平台的 Haskell 项目开发工具
    • haskell-language-server (可选):语言服务器,帮助编辑器/IDE 提供诊断、补全与重构等能力

    通过系统包管理器安装

    你也可以通过操作系统自带的包管理器安装 GHC、cabal 与 Stack。需要注意的是,这些包往往相对旧一些;如果你更偏好这种方式,下面整理了常用入口。

    展开 Linux 发行版
    • Ubuntu
      • 官方包:GHC、cabal、Stack
      • 第三方 PPA:hvr/ghc
    • Debian
      • 官方包:GHC、cabal、Stack
    • Fedora
      • 官方包:GHC、cabal、Stack
    • openSUSE
      • 官方包:GHC、cabal
      • devel:languages:haskell 仓库:repo
    • Gentoo
      • 官方包:GHC、cabal、Stack
      • 第三方仓库:gentoo-haskell
    • Arch
      不建议使用 Arch 提供的 Haskell 开发工具(存在已知问题)。更多信息见 [1] [2]。
    展开 Nix/NixOS 说明

    Nix 是 NixOS 的包管理器,也可以在其他 Linux 发行版和 macOS 上使用。

    在 NixOS 上使用 ghcup 不可用,建议改用官方包。你可以通过 Nix 安装 GHC、Haskell Language Server 以及 cabal-install(或 Stack)。更多关于使用 Nix 搭建开发环境与打包的内容,请阅读相关文档。

    • NixOS
    • Nix 文档
    展开 FreeBSD 包
    • Ports:GHC、cabal、Stack
    展开 Windows 包
    • Chocolatey: GHC, cabal, Stack
    © 2026 Haskell China
    Powered by DeepMoore AI