【数学者】Haskellはクソ言語【オナニー】at TECH
【数学者】Haskellはクソ言語【オナニー】 - 暇つぶし2ch417:デフォルトの名無しさん
06/12/04 00:29:46
>>416
IOは上から順に実行されるのが原則(getContentsは例外)で、
評価と違って「値の要求があって初めて」実行したりはしない。
だから
r <- mapM hoge $ lines cs
とあったら、rが必要とされるか否かにかかわらずmapMは最後まで実行される。
これは、そうでないと動作の順序を予測するのが難しくなって不便だからだ。
どうしてもその挙動が必要なら、unsafeInterleaveIOという関数を使えば実現できる。

ちなみにそのコードは行ごとにputStrしているだけで、
mapM_ putStrLn $ lines cs
と書いているのとかわらない。
何がしたいかをもう少し詳しく教えてくれたら、もうちょっとまともな助言ができると思う。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch