Fri Apr 6 19:59:52 CEST 2012


Maybe it's simpler to just provide a forM-like abstraction for each
container datastructure instead of a fold.

   forM  :: [a] -> (a -> m b) -> m [b]
   forM' :: D a -> (a -> m b) -> m (D b)

it seems simpler to use than a fold.  I wonder though if this is
somehow equivalent.  Probably is, but in what way?

Actually, this seems to be Data.Traversable[1].

[1] http://www.haskell.org/ghc/docs/6.12.2/html/libraries/base-