iT邦幫忙

2023 iThome 鐵人賽

DAY 2
1
Software Development

Haskell 從入門到放棄系列 第 2

[Haskell 從入門到放棄] Day 02 - 開發環境

  • 分享至 

  • xImage
  •  

今天先來輕鬆的開發環境設定

因為 Haskell 是一個靜態語言所以我們勢必需要安裝所需要的編譯器,接下來我們都會使用最主流的 GHC (Glasgow Haskell Compiler) 來進行開發。

以下流程皆是使用 m1 macvs code 作為示範,但如果沒意外的話各作業系統應該都可以支援 GHCup,特別注意一下 windows 是需要在 WSL2 進行安裝。

GHCup

GHCup 是一個幫助我們安裝 GHC的工具

接下來我們按照官網的指令輸入:

curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

基本上就是一路按 enter 就好,但要特別注意的是如果是要使用 vs code (其實只要是支援LSP的編輯器)進行開發的讀者,請記得在安裝時記得安裝 Haskell Language Server

vs code設定

首先推薦安裝幾個 vs code插件

  1. Haskell
    1. 提供語法檢查、自動補全等等功能
  2. Code Runner
    1. 提供更簡單的 build code 流程
  3. haskell-linter
    1. 程式碼格式檢查
  4. Haskell Syntax Highlighting
    1. 語法 hightlight

安裝好後會類似這樣提供各類功能:
https://ithelp.ithome.com.tw/upload/images/20230914/20159893bY6yaLijvn.png
https://ithelp.ithome.com.tw/upload/images/20230914/20159893KoQ3ovPYn8.png

特別介紹一下 code runner,安裝好當我們按下右上角的Run Code
https://ithelp.ithome.com.tw/upload/images/20230914/201598938NegOq8I5G.png

會直接在下方的 Output 顯示執行結果

https://ithelp.ithome.com.tw/upload/images/20230914/20159893vVtq6uajO3.png

可能會遇到坑

如果出現以下錯誤

Consider installing HLS via ghcup or change "haskell.manageHLS" in your settings

可以試著先看一下自己的 vs code setting.json 是否有 haskell.manageHLS 的設定

"haskell.manageHLS": "GHCup",

如果還是沒辦法,可以試著用 cabal 安裝 haskell-language-server 看看

ghcup install cabal 3.10.1.0
cabal install haskell-language-server

如果遇到 linter相關的

可以看一下setting.json 有無設定:

"haskell.hlint.executablePath": "hlint",

今天的範例程式碼會放在 github 上:

30days-for-haskell/day02(github.com)


上一篇
[Haskell 從入門到放棄 ] Day 01 - 前言
下一篇
[Haskell 從入門到放棄] Day 03 - 基礎語法
系列文
Haskell 從入門到放棄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言