2014-02-01から1ヶ月間の記事一覧

IOアクションひとつひとつを利用許諾し・テスト可能にする

IOのテストってたいへんだ.これをどうにかするために,先人たちは色々考え, 利用対象の特定IOアクションを慎重に取捨選択し,MonadHogeIOのような型クラスによりインターフェースを与えてからそのインターフェース上のアクションとして実装する.実行時は…

CPS変換もいいけど融合変換もね

継続渡しなHaskellライフ - モナドとわたしとコモナド の流れで. 要約すると,元々 fb :: Int -> Either Int String fb n = case n `gcd` 15 of 15 -> Right "FizzBuzz" 5 -> Right "Buzz" 3 -> Right "Fizz" _ -> Left n fizzbuzz1 :: Int -> String fizzb…