開発環境の構築

このページでは、Haskell 開発環境の構築方法と、GHC コンパイラの使い方を説明します。

Haskell Platform のインストール

Haskell の開発環境を構築するには Haskell Platform をインストールするのがおすすめです。 Haskell Platform には、デファクトスタンダードのコンパイラである GHC と、ビルドツールである Cabal、Stack が含まれています。

Windows、Mac OS 向けにはインストーラが配布されています。 Linux の場合は、コマンドラインを叩くだけでインストールができます。 詳細は公式サイトの手順をお読みください。

GHC の使い方

GHC には、いわゆる普通のコンパイラ以外に、対話環境(REPL)と、スクリプト実行方式のコンパイラ(インタプリタ?)が付属しています。

これら 3 つの使い方を簡単に見ていきましょう。

対話環境 (ghci) の使い方

対話環境 (GHCi) は ghci で起動します。

% ghci
GHCi, version 7.10.3: http://www.haskell.org/ghc/  :? for help
Prelude>

Prelude> は GHCi のプロンプトです。 プロンプトに続いて式を入力すると、式を評価できます。(太字は入力した値。)

Prelude> 2 + 3
5
Prelude> "hello"
"hello"
Prelude> [1, 2, 3]
[1,2,3]
Prelude> let str = "hello"
Prelude> length str
5
Prelude> reverse str
"olleh"

:t コマンドを使うと、式の方を調べることができます。

Prelude> :t True
True :: Bool
Prelude> :t reverse
reverse :: [a] -> [a]

GHCi を終了するには、:q と入力します。

Prelude> :q
Leaving GHCi.

GHCi はもっといろんな便利な使い方ができるのですが、それはまた別の記事にしようと思います(そのうち)。

コンパイラ (ghc) の使い方

次の Haskell プログラムをコンパイルしてみましょう。

main = putStrLn "hello, world"

このソースコードを hello.hs みたいな名前のファイルに保存してください。 ソースコードのコンパイルは、次のように行います。

% ghc hello.hs
[1 of 1] Compiling Main             ( hello.hs, hello.o )
Linking hello ...

生成される実行ファイル名は hello (Windows の場合は hello.exe)です。 この実行ファイルを走らせてみます。

% ./hello
hello, world

期待通り、”hello, world” と出力されることが確認できました。

スクリプト実行環境 (runghc) の使い方

コマンド runghc はコンパイルと実行を一気にやってくれるツールです。

% runghc hello.hs
hello, world

スクリプト感覚でさくっと動かすことができて便利ですね。