Mac OS X 10.9 MavericksにHaskellをインストール

  • Xcodeのインストール

Haskell処理系をインストールする前にXcodeが必要なのでAppStoreからXcodeをインストール。
軽量版のCommand Line Tools for Xcodeでも構わないみたいですが、まぁXcodeはあって困らないので一式入れておきました。

現時点の最新版はXcode 5.0.2でした。
‎「Xcode」をMac App Storeで

インストールした後、一度Xcodeを起動してライセンス条項に同意しておきます。

  • Haskell Platformのインストール

GHCコンパイラ単体でインストールするよりも、周辺ツール類もまとめて一式入れてくれるHaskell Platformを入れた方が便利なようなので、こちらを入れる。
Haskell Platformのインストーラを以下からダウンロード
Haskell Platform for Mac OS X
現時点の最新版は「Haskell Platform 2013.2.0.0 for Mac OS X, 64 bit」。
インストーラを起動してデフォルト設定のままでインストール。

  • ghc-clang-wrapperの実行

現時点(2013/11/17)でHaskell Platformのダウンロードリンクの下に注意書きの記載がありますが、Haskell Platform 2013.2.0.0はXcode 5 & OS X 10.9 (Mavericks)で使用する場合、Xcode5と相性が悪いようで既知の不具合があり、回避策となるスクリプトが公開されています。
Haskell Platform 2013.2.0.0入ってるGHCのバージョンは7.6.3ですが、Xcode5からgccの実体がclangになった影響だそうです。

具体的には以下のスクリプトをダウンロードして、実行します。

$ curl -O http://www.haskell.org/platform/ghc-clang-wrapper
$ sudo cp ghc-clang-wrapper /usr/bin/
$ sudo chmod 755 /usr/bin/ghc-clang-wrapper
$ sudo /usr/bin/ghc-clang-wrapper
PATCHED: /Library/Frameworks/GHC.framework/Versions/7.6.3-x86_64/usr/lib/ghc-7.6.3/settings

インストールしたらお約束のHello Worldをやってみる。
まずはターミナルを開いて対話式のGHCIを起動。

$ ghci
Prelude> putStrLn "Hello World!"
Hello World!

GHCIの終了は「:q」とタイプすれば抜けられます。

次はソースに書いて実行する方法を。
エディタで以下のファイルを作成してhello.hsとして保存。

main = putStrLn "Hello World!"

余談ですがはてなスーパーPre記法でhaskellも対応しているんですね。
この短いサンプルだとまったく伝わらないですが。。。

コンパイルして実行

$ ghc hello.hs
$ ./hello 
Hello World!

コンパイルせずに直接実行

$ ghc -e main hello.hs
Hello World!

なんかちゃんと動いてるっぽいです。