関数型プログラミング言語Haskell Part8at TECH
関数型プログラミング言語Haskell Part8 - 暇つぶし2ch31:デフォルトの名無しさん
07/11/02 01:23:24
>putStr "Hello world"で済むじゃんいらないじゃんみたいな
うん。だからsequenceの真価が発揮されるのはリストの内容や要素数が実行時まで決まらないときだ。
なんか人為的な例だけど、
g :: Int -> IO (Maybe (IO ())
という関数があるとする。これは何か動作を実行するんだけど、それは失敗するかもしれなくて、
そのときはNothingを返す。成功した場合は後で後始末をしなきゃいけない。そのために(Just 後始末)を返す。
gを0から9までを引数にして実行して、それが終わったら全部後始末をしたいとしよう。これはsequence_を使って
do
  cleanups <- liftM catMaybes $ mapM g [0..9]
  sequence_ cleanups
と書ける。


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