<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Aug 7, 2015 at 11:15 AM, Shishir Srivastava <span dir="ltr"><<a href="mailto:shishir.srivastava@gmail.com" target="_blank">shishir.srivastava@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><span style="font-family:monospace,monospace">Prelude> :set +m</span><br></div><div><div><font face="monospace, monospace">Prelude> let main1 = do</font></div><div><font face="monospace, monospace">Prelude|             a <- readLn</font></div><div><font face="monospace, monospace">Prelude|             return a</font></div><div><font face="monospace, monospace">Prelude|</font></div><div><font face="monospace, monospace">Prelude></font></div><div><font face="monospace, monospace">Prelude> main1</font></div><div><font face="monospace, monospace"><br></font></div><div><font face="monospace, monospace"><interactive>:75:1:</font></div><div><font face="monospace, monospace">    No instance for (Show (IO b0)) arising from a use of `print'</font></div><div><font face="monospace, monospace"></font></div></div></div></blockquote><div><br></div><div>In an actual program, it would be able to apply defaulting rules and monomorphize `b0` to Integer. The somewhat unusual ghci environment, in particular how it tries to figure out whether to evaluate an expression and `print` the result or instead run an IO action --- coupled with the monomorphism restriction being disabled in the interactive context in ghci 7.8 and later --- is working against you here. As a result, you need to specify a result type when invoking `main1`, which is what the error message is telling you.</div><div><br></div></div>-- <br><div class="gmail_signature"><div dir="ltr"><div>brandon s allbery kf8nh                               sine nomine associates</div><div><a href="mailto:allbery.b@gmail.com" target="_blank">allbery.b@gmail.com</a>                                  <a href="mailto:ballbery@sinenomine.net" target="_blank">ballbery@sinenomine.net</a></div><div>unix, openafs, kerberos, infrastructure, xmonad        <a href="http://sinenomine.net" target="_blank">http://sinenomine.net</a></div></div></div>
</div></div>