Okada Hiroshi の blog

typo が多いです

Haskell 勉強記録 25 日目

すごいHaskellたのしく学ぼう!

すごいHaskellたのしく学ぼう!

今日は 第9章:もっと入力、もっと出力 ランダム性の途中まで (位置 4753/11175) まで読み進めました。

サンプルでは finiteRandoms :: (RandomGen g, Random a, Num n) となっているのですが。

    Could not deduce (Eq n) arising from the literal `0'
    from the context (Rand.RandomGen g, Rand.Random a, Num n)
      bound by the type signature for
                 finiteRandoms :: (Rand.RandomGen g, Rand.Random a, Num n) =>
                                  n -> g -> ([a], g)

というエラーが出てしまったので

finiteRandoms :: (RandomGen g, Random a, Integral n) にしました。

今まで出てきた関数

Haskell 勉強記録 24 日目

すごいHaskellたのしく学ぼう!

すごいHaskellたのしく学ぼう!

今日は 第9章:もっと入力、もっと出力 ToDoリストをもっと楽しむの終わり (位置 4609/11175) まで読み進めました。

僕の読んでいる kindle 版では todo.hs に間違いがあるようです。

  1. import Control.Exception が抜けているのでコンパイル時に bracketOnError が見つからないと怒られます。
  2. 関数 remove の定義中 "todo.txt" がハードコーディングされたままになっています。fileName に置き換えないとコマンドラインで渡したファイル名が無視されてしまいます。

今まで出てきた関数

Haskell 勉強記録 22 日目

今日は、いままで勉強した部分を読み返したりしたので、ほとんど進みませんでした。

具体的には、第9章:もっと入力、もっと出力 ファイルの読み書き の途中 (位置 4370/11175) まで読み進めました。

一応、2ヶ月位を読み終える目標にしているので、少しスピードアップしなければなりません。

今まで出てきた関数

Haskell 勉強記録 21 日目

今日は 第9章:もっと入力、もっと出力 ファイルの読み書き の途中 (位置 4341/11175) まで読み進めました。

ファイルハンドルを使ってファイルを読む関数がでてきました。

そういえば getContents も hGetContents も IO String を返すので、テキストとしてファイルを読み込むようだけれど、バイナリー読み込みとかはどうなっているのだろう。

今まで出てきた関数

Haskell 勉強記録 20 日目

すごいHaskellたのしく学ぼう!

すごいHaskellたのしく学ぼう!

今日は 第9章:もっと入力、もっと出力 ファイルとストリーム の途中 (位置 4146/11175) まで読み進めました。

getContents の動作が ghcコンパイルした場合は行バッファが効いていて、一行ごとの入力だったのに対して ghci 上では一文字ずつ処理されるようで違っていました。

今日も I/O 系の関数が幾つか出てきました。

今まで出てきた関数