あどけない話

インターネットに関する技術的な話など

2011年に Haskell を始める人のために

適切な一歩を踏み出すか否かは、大きな違いを生みます。この記事では、2011年に Haskell を始める人のために、著者が考える最適な入門方法を示します。

Haskell Platform をインストールする

昔人気のあった Hugs は、もう保守されていません。現在は、GHC の時代です。GHC とライブラリをパッケージ化した Haskell Platform をインストールして下さい。

インタープリタが使いたい場合は、付いてくる ghci を使います。

GHC マニュアルの日本語訳もあります。

プログラミングHaskell

次に、プログラミングHaskellを読んで関数プログラミングの「こころ」を理解しましょう。

プログラミングHaskell

プログラミングHaskell

命令型言語を使いこなせる人でも、再帰やプログラム全体を一つの式で表すことは難しいのではないでしょうか? 命令型言語で学んだことは忘れて、初心に返って読みましょう。

Learn You a Haskell for Great Good

今一番熱い入門書は、「Learn You a Haskell for Great Good」です。英語ですが、文体は平易です。

「プログラミングHaskell」には書かれていない、文法やモジュールの作り方、Monad の詳細が説明されています。早く翻訳されるといいですね。

Learn You a Haskell for Great Good!: A Beginner's Guide

Learn You a Haskell for Great Good!: A Beginner's Guide

ちなみに、タイトルは文法的に正しくない英語なので、意味が分からなくても当然です。

QAで学ぶMonad

Monad は、Learn You a Haskell for Great Good の説明で理解できると思うのですが、それでも分からなかったら「QAで学ぶMonad」で再入門して下さい。

Real World Haskell

本格的なプログラムを書くためには Real World Haskell を読みましょう。この本は、3人の著者が書いており、主張が矛盾していたりしているところもありますが、それも楽しんで下さい。

Real World Haskell: Code You Can Believe In

Real World Haskell: Code You Can Believe In

「例外」に関する説明は古いので注意が必要です。

cabal

Haskell のライブラリは、「hackageDB」に登録されています。一度眺めてみるといいでしょう。関数のドキュメントも、すべてここにあります。

これらのライブラリは、Haskell Platform に付いてくる cabal コマンドでインストールできます。とりあえず、以下のサブコマンドを覚えるといいでしょう。

  • cabal update -- 最新のライブラリの一覧を取得
  • cabal install -- パッケージを依存するパッケージとともにインストール

git

DVCS として Haskell で書かれた darcs が使われてきましたが、Haskell コミュニティは徐々に git へ移行しようとしています。これからは git を覚えておけばいいでしょう。