<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">Il giorno 03/mar/2015, alle ore 17:22, Arjun Comar <<a href="mailto:nrujac@gmail.com" class="">nrujac@gmail.com</a>> ha scritto:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">You might prefer using the <a href="https://hackage.haskell.org/package/pipes-4.1.4/docs/Pipes.html#g:5" class="">ListT</a> implementation from the Pipes package which has instances for MonadReader, MonadWriter, and MonadState already. Also, the provided source might give you some insight into how to write these instances for the list-t:ListT type.<br class=""></div><div class="gmail_extra"><br class=""></div></div></blockquote><br class=""></div><div>That sounds interesting, but since I don’t know the Pipes ecosystem</div><div>I don’t understand how to extract the values produced by a ListT action,</div><div>because runListT returns m () instead of m [a] or something like that.</div><div><br class=""></div><div>I understand ListT is a “Producer” but then how to I extract into a list</div><div>the values produced by a pipes Producer?</div><div><br class=""></div><div>Thanks,</div><div>Nicola</div><br class=""></body></html>