Hello Matthew, Friday, May 26, 2006, 11:50:28 AM, you wrote:
> I can't say I fully understand why this is true. In both cases I was > wrapping Rmatrix in > a monad after every computation. The difference is that the array > component had an > additional monad wrapper around and now it doesn't. That is, > old case > newtype Rmatrix = Rmatrix (Int, Int, IO(StorableArray Int CDouble)) > new case > newtype Rmatrix = Rmatrix (Int, Int, StorableArray Int CDouble) seems that you just don't understood monads. "IO a" type means "an action that returns value of type 'a'" :) just as example - 'getChar' is an action that has type "IO Char". this action by itself don't contain any Char, as you can guess :) -- Best regards, Bulat mailto:[EMAIL PROTECTED] _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
