2012-03-01から1ヶ月間の記事一覧

Conduitを使ってみる

なんかIO扱ったりするのにConduitが熱いらしいので使ってみた。まだよく分かってないのでたぶん色々間違ってる。 ConduitではSourceから一つずつ流れてくるデータをConduitで流れ方を変えたり加工したりしてSinkに流す。SourceとSinkがファイルでConduitが無…

Haskellで並行処理

forkIOでスレッドを起動できる。forkIOは(IOモナドに包まれた)スレッドIDを返すので、取っておいて後でkillThreadするとThreadKilled例外を投げて終了できる。 import Control.Concurrent main :: IO () main = do id <- forkIO $ subThread 0 threadDelay 5…

JavaからScalaに乗り換え中

最近JavaからScalaに頑張って乗り換え中。昔は「ScalaってJavaを綺麗にしてファーストクラスの関数入れただけでしょ?」と思ってたけど、実際使ってみると便利な機能が色々あって、しかも文法も(わりと)すっきりしてる。 特に便利なのがcase classで、case…