7.03.2010

Haskellしよう。

そんなわけで「ふつうのHaskell」読み終えました。
買って読んで、しばらくしてからの再読なので内容はほとんど覚えていませんでしたが、以前身につけた素養は残っていたらしく、読みすすめるのはずっと楽でした。

以下、感想です。



Amazonのレビューでは五つ星が付いているようですが、私がつけるなら三つ星〜四つ星くらいかなと。

章の構成はよく練ってあって、UNIX系のOSでよく使われるコマンドラインベースのツールをつくるところから話がスタートしていきます。

体裁としては教科書ではなく、講演会や勉強会での持ち回りの発表を聞いているような感じでした。

内容はHaskellそのものというよりは、Haskellを実用するには?の入門的な内容になっていて、Haskellの設計思想や、Haskellとはなんぞや?という概念の部分はすっ飛ばしています。

扱う題材もほとんどがテキスト処理で、数値計算やパズル解析なんかの、「Haskellをよく使う人たちがやりそう」と思えるような分野の題材は取り上げられていませんでした。

文章はとても読みやすく、よくありがちな「前のページの内容まではすべて理解している前提で話をすすめる」タイプの書籍とは明らかに異なり、数回程度出てきた内容から、出現頻度の低い内容を補う形の解説で、無理なく読みすすめることができました。

章末問題が付いているのも魅力で、学習内容を実機で確認しながら読み進められる他、回答が巻末に付いているので、携帯電話やノートなどにコードを打ち込み、それと回答を見比べながら学習を進めていく、処理系ナシのスタイルでも、関数言語的発想を養えるのが魅力的だと思いました。

しかし、11章以降〜第3部の終わり(つまり巻末)までは、どの話も尻切れとんぼのような、しっくりこない内容が多いと感じました。
第3部で作るとしているWikiアプリケーションも解説は主要な部分のみに絞っており、「こんな風にWikiを作りました」というレポートになってしまっている感じがありました。

モナドについても、モナドという言葉を出しただけで踏み込んだ解説はなされておらず、機能としてのモナドというか、そういう解説に終始しているように感じました。

それを筆者もよく分かってのことか、巻末にこの先読むべき本が道しるべとして列挙されている点には、非常に好感が持てました。

結論として、入門書にはおすすめですが、長く付き合っていけるタイプの書籍ではありません。
また、普段使いの言語としてHaskellをチョイスする人には十分な内容ですが、関数型言語としてのHaskellを学びたいという人には、物足りない内容だと思います。

この本がでてからだいぶ立つというのに、関連書籍は非常に少なく、まだまだ国内ではマイナーな言語であるHaskellですが、これからチャレンジしようと重っている方は、図書館などで読んでみて、自分に合う書籍だと思えば、購入に踏み切ると良いのではないかと思います。

0 件のコメント: