関数型プログラミング言語Haskell Part10
■ このスレッドは過去ログ倉庫に格納されています
0600デフォルトの名無しさん
2009/06/10(水) 16:19:37comb = do a <- f ; b <- f ; c <- f ; return (g a b c)
bar = do (_, log) <- runWriterT comb ; mapM_ h log
この場合、hがlogの先頭だけしか必要としない場合でも、
f内で行われるIOの動作は3回分きっちり実行されますよね。
これをfが評価される度にhを実行するようにしたいんですが、どうすればいいんでしょうか?
例えばf内でgetLineを使ってるようなとき、
barで入力される度にhがf内のtellで追加された分のログに対して実行されるような動作です
■ このスレッドは過去ログ倉庫に格納されています