〜Haskellで学ぶ〜関数プログラミングことはじめ
技術評論社 Software Design 2009年04月号 特別企画
目次
- Haskellと関数プログラミング
- 関数プログラミングという考え方
- Haskellプログラミングの基礎知識
- プログラミングの進め方,改良,抽象化
- Haskellの開発環境構築
- Glasgow Haskell Compiler, Emacs, cabal-install
- 実践!Haskellプログラミング【前編】
- TwitterのAPIをたたいてみよう
- 実践!Haskellプログラミング【後編】
- Twitterボットアプリの作成
エラッタ
p.121 左段サンプルコードの直後のパラグラフ2行目
- 訂正前
....2行目が関数の定義で,
- 訂正後
....2行目以降が関数の定義で,
p.122 左段「GHCiの終了」節の直前のパラグラフ1行目
- 訂正前
...はHaskellの仕様が規定され
- 訂正後
...はHaskellの仕様で規定され
p.122 右段 GHCiで「109 * 45」の計算をした直後
- 訂正前
4,095円になることがわかります....
- 訂正後
4,905円になることがわかります....
p.123 左段「GHCiのコマンド」節の直前のパラグラフ2行目
- 訂正前
後に評価した式の...
- 訂正後
後より1つ前で評価した式の...
p.124 表1 Haskellの識別子
2段目の種類の欄
- 訂正前
型構成子型シノニム
- 訂正後
型構成子,型シノニム
3段目の例の欄
- 訂正前
True, False, Just, Nothing
- 訂正後
True, False, Just, Nothing など
p.126 左段2つ目のパラグラフ2行目
- 訂正前
....すなわち,upperStrを「"abc"」に
- 訂正後
....すなわち,upperStrを"abc"に
p.126 右段 upperStrの定義直後のパラグラフ3行目
- 訂正前
「toUpper c : upperStr cs」は(toUpper c) : (upperStr cs)
- 訂正後
toUpper c : upperStr cs は (toUpper c) : (upperStr cs)
p.128 右段 最後から2行目
- 訂正前
uuperStrとlowerStrの定義は...
- 訂正後
upperStrとlowerStrの定義は...
p.132 右段 関数合成(.)の定義の直後のパラグラフ2行目
- 訂正前
ntrees n = length (ntrees n)
- 訂正後
count n = length (trees n)
p.132 右段 関数合成(.)の定義の後の2つ目のパラグラフ差し替え
- 訂正前
長さを数えるだけなのに,なにもきまじめに木を作成しなくてもいいだろうというわけです.
- 訂正後
残念ながらこれでは数を数えるだけなのにきまじめに木を作成しているので,効率は悪いのです.そこで木を実際には生成しないで数えることを考えましょう.
TwitterReplyBotアプリについて
現在最新のHTTPモジュール(バージョン4000.0.4)ではRequestおよびResponseの型が型変数aでパラメータ化されており、
プログラムのロードに失敗します。
ロードできるように修正したバージョンは下記からダウンロードしてください。
あらたにご指摘いただいたエラッタです.(3/31にメールを頂きました.ありがとうございます.)
p.123 左段サンプルコード 下から5行目
- 訂正前
".selpmas ..."
- 訂正後
".elpmas ..."
p.123 左段サンプルコード 下から4行目
- 訂正前
lenth it
- 訂正後
length it
p.124 リスト1 下から2行目
- 訂正前
upper は
- 訂正後
upperStr は
p.129 右段 図2 n=3 の木
- 訂正前
a (→ a → a)
- 訂正後
a → (a → a)
p.132 右段 上から2行目
- 訂正前
図2.2の
- 訂正後
図2の
訂正後*** p.136 左段 最初の段落 下から2行目
- 訂正前
Proc が何をするかは...undefinedとしておきます
- 訂正後
proc が何をするかは...undefinedとしておきます
p.136 右段 最初のサンプルコード
- 訂正前
Proc = cat
- 訂正後
proc = cat
p.136 右段 行番号を付けるの直前の段落 3行目
- 訂正前
myFilter という名前の
- 訂正後
myCat という名前の
p.137 右段 最初のサンプルコード 上から3行目
- 訂正前
combine n l = rjust 6 ++ ": " ++ l
- 訂正後
combine n l = rjust 6 (show n) ++ ": " ++ l
p.138 左段 サンプルコード直後の段落 1行目
- 訂正前
"-n " は (余分な空白あり)
- 訂正後
"-n" は
p.138 右段 最初のサンプルコード
- 訂正前
getArg
- 訂正後
getArgs
p.139 左段 最後の段落 1行目
- 訂正前
disptch
- 訂正後
dispatch