在本地安装 Haskell

了解如何在本地安装 Haskell,从而在自己的电脑上完成 Exercism 的练习


获取 GHCup

安装 Haskell 工具最推荐的方式是通过 GHCup。

使用 GHCup,你可以管理已安装的编译器、项目/包管理器和语言服务器。

安装 Stack

做 Exercism 练习只需要 Stack。

要安装 Stack,运行 GHCup 的安装命令或脚本即可。 按默认选项进行,但选择同时安装 Stack。

不小心跳过了 Stack 的安装? 没关系,之后运行 ghcup install stack 就行。

GHCup 会安装

  • 编译器(GHC:Glasgow Haskell Compiler)

    严格来说,做 Exercism 并不需要它,但如果你想在练习目录之外玩转 GHCi,它就很方便。

  • Cabal

    项目/包管理器。 做 Exercism 不需要它。

  • Stack

    你将在 Exercism 中使用的项目/包管理器。 它会确保每个项目(练习)都有正确的编译器和库。

要检查安装是否成功,运行以下任意一条命令

  • ghcup list:成功的话会看到一长串工具版本,其中 Stack 标记为已安装
  • stack --version:成功的话输出形如 Version 2.7.5, Git revision ...

获取正确的 GHC 版本

需要时,Stack 会自动下载并安装 GHC。 你可以在终端中运行以下命令来启动安装并验证:

# Note: it only makes sense to run Stack
# inside projects, so navigate into an
# exercise directory first!
exercism download --exercise=hello-world --track=haskell
cd ~/Exercism/haskell/hello-world
stack ghc -- --version

如果输出的内容类似

The Glorious Glasgow Haskell Compilation System, version 8.8.4

就说明 GHC 安装正确。

设置编辑器以使用 Haskell

Haskell 支持由 Haskell Language Server(HLS)提供。 语言支持不是必需的,但强烈推荐。

Visual Studio Code(推荐)

只需安装 Visual Studio Code 的 Haskell 扩展。 它会用 GHCup 自动安装 HLS,之后你就准备好了。

注意: 对于刚下载的练习,HLS 可能无法正常启动。 如果遇到这种情况,运行 stack test 并重启语言服务器。

其他编辑器

参见 HLS 编辑器配置文档。 你可能需要手动安装 HLS。 为此,运行 ghcup install hls。