On Thu, May 29, 2008 at 4:38 PM, Henning Thielemann &lt;<a href="mailto:lemming@henning-thielemann.de">lemming@henning-thielemann.de</a>&gt; wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

Is<br>
<br>
&nbsp;type Matrix monad array num = monad (array (Int,Int) num)<br>
<br>
ok for you?<br>
</blockquote></div><br>Not really what I was looking for but I may end up using it.<br><br>What I wanted is to hide the Monad and Array and have it inferred from the context of the array<br><br>STArray or STUArray when run in the ST monad with runST(U)Array, IOArray or IOUArray when used in the IO monad, etc...<br>
<br>I&#39;m not sure it&#39;s the right thing to do. I may create more troubles than I solve. I was just trying to keep things as generic as possible.<br><br>Thanks for your reply,<br><br>Olivier.<br>