On May 9, 2009, at 18:03 , Miguel Mitrofanov wrote:
On 10 May 2009, at 00:30, Brandon S. Allbery KF8NH wrote:On May 9, 2009, at 15:31 , michael rice wrote:Prelude> Just 3 >>= (1+)That (a -> m b) in the middle is what's failing to typecheck. The error is a bit obtuse because ghci is trying hard to find a way to do what you want, so it assumes "m" is "(-> r)" (the functor/monad representing functions, also known as the Reader monad)Ehm? What? I haven't seen the (-> r) monad anywhere near this code.
That's the only way I can get the error he got; if it uses Maybe as the monad then why is the Maybe on the *inside* in the error message? Clearly it bound m to something else, and ((->) r) is the only other one I can think of applying there. (Hm, I suppose it could be IO forced by the ghci context, but I didn't think it worked that way.)
-- brandon s. allbery [solaris,freebsd,perl,pugs,haskell] [email protected] system administrator [openafs,heimdal,too many hats] [email protected] electrical and computer engineering, carnegie mellon university KF8NH
PGP.sig
Description: This is a digitally signed message part
_______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
