[Haskell-cafe] *almost* composition in writer monad

Miguel Mitrofanov miguelimo38 at yandex.ru
Wed Mar 4 12:29:48 EST 2009


Isn't that "sequence" in State monad?

On 4 Mar 2009, at 19:37, Edsko de Vries wrote:

> Hi,
>
> Does this function remind anybody of anything? It seems like I'm  
> missing an obvious abstraction:
>
> composeWriter :: [a -> (a, b)] -> a -> (a, [b])
> composeWriter [] a
>  = (a, [])
> composeWriter (f:fs) a
>  = let (a', b) = f a
>           (final_a, bs) = composeWriter fs a'
>     in (final_a, b:bs)
>
> It's almost but not quite composition for functions in the Writer  
> monad; the difference is that every function has exactly one b  
> result, rather than a list of them.
>
> Edsko
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe



More information about the Haskell-Cafe mailing list