📝

Haskell開発環境構築 for Mac

2021/03/01に公開

Haskellの環境構築

はじめに

以前、途中で挫折したHaskellを真剣にやってみようということで、初歩的なところから始めまする

開発環境

・ MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)
・ プロセッサ : 2GHz クアッドコアIntel Core i5
・ メモリ : 16GB
・ MacOS Catalina (10.15.4)

環境構築

Haskellの環境構築するなら、stackを利用するのが良さそう。
公式ドキュメンント

stackとは

下記のような機能を兼ね備えたツール
・ Haskellコンパイラをインストールできる
・ Haskellで開発する為のプロジェクトを新規作成できる
・ 作成したプロジェクトをビルドできる

やってみた

・まず、stackをインストール
Homebrewでいけそう。

brew install stack 

・stackを使用して、コンパイラ(GHC)や基本のパッケージをインストールする

stack setup 

・GHCのバージョンを表示してみる

stack ghc -- --version

stack setupでダウンロード/インストールしたものは、~/.stackディレクトリ配下に格納されているっぽい

・プロジェクトを作成してみる

stack new hello-world

いい感じです。
これにより、Defaultのプロジェクトファイル一式が作成される。
また、プロジェクトを作成すると、ディレクトリ内にstack.yamlという設定ファイルが作成されている

❯ tree .
.
├── ChangeLog.md
├── LICENSE
├── README.md
├── Setup.hs
├── app
│   └── Main.hs
├── hello-world.cabal
├── package.yaml
├── src
│   └── Lib.hs
├── stack.yaml
├── stack.yaml.lock
└── test
    └── Spec.hs

3 directories, 11 files

・Hello Worldを出力したい
src/Lib.hs の中身を書き換える

module Lib
    ( someFunc
    ) where

someFunc :: IO ()
someFunc = putStrLn "Hello, world." 

・ビルドしてみる

stack build

・ 実行してみる

stack exec hello-world-exe

いい感じ

Stackの主なコマンド

・テンプレートからプロジェクトを新規作成する

stack new

・プロジェクトを新規作成 (テンプレート無し版)する

stack init

・指定されたバージョンのコンパイラ / 基本パッケージをインストールする

stack setup

・ビルドする

stack build

・ビルドしてlocal-binにインストール

stack install

おわり

目標 : Haskell使ってWeb APIを作ってみる

参考

参考元

Discussion