2009-05-16
ジェネレータ
ライブラリ |
PythonやRubyのジェネレータのような仕組みを提供するモナドを書いた。
import PauseMonad main :: IO () main = tracePauseT $ do liftIO $ print 1 pause liftIO $ print 2 pause liftIO $ print 3 pause liftIO $ print 4
import YieldMonad main :: IO () main = traceYieldT $ do liftIO $ print 1 yield "hoge" liftIO $ print 2 yield "fuga" liftIO $ print 3 yield "foo" liftIO $ print 4
コメントを書く
トラックバック - http://haskell.g.hatena.ne.jp/illillli/20090516