Perhaps I don&#39;t quite get how this works, but when I :set -fbreak-on-exception in GHCi, I get an exception using readFile. It reads the entire file and then throws what appears to be an EOF exception.<br><br><blockquote style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;" class="gmail_quote">

Prelude&gt; readFile &quot;blah.txt&quot;<br>&quot;blah\nblah\nblah\nStopped at &lt;exception thrown&gt;<br>_exception ::<br>  e = GHC.Exception.SomeException (GHC.Exception.:DException _<br>                                                             (GHC.Show.:DShow ...) ....)<br>

                                  (GHC.IOBase.IOError Nothing GHC.IOBase.EOF ....)<br></blockquote><br>When I :set -fno-break-on-exception, I see no exception.<br><br>I thought that lazy IO reads until it reaches the EOF, then closes the file. This happens with both 6.10.1 and 6.8.3, so perhaps this is standard stuff, and I&#39;m missing something.<br>

<br>Regards,<br>Sean<br>