
On 29-Oct-2004, Ben Rudiak-Gould
Jon Fairbairn wrote:
On 2004-10-29 at 00:03BST Ben Rudiak-Gould wrote:
Not much better, though: in my experience this particular exception leaves ghci in a very peculiar state, and it's usually necessary to quit and restart it before it will work again.
I don't think I've seen such a problem (maybe I so rarely make that type of mistake?;-). What version? What are the symptoms of this not working of which you speak? It seems OK in ghci 6.2.1
We ran into a related problem recently. I think the problem may only show up on Windows, not on Linux. The problem is that when a loop occurs, ghc's garbage collection detects that the standard I/O handles for stdin/stdout/stderr can no longer be referenced and finalizes them, *before* detecting the loop and throwing an exception. Subsequent code may then attempt to use these already-finalized standard I/O handles. A possible work-around is to create stable pointers to those handles. But I'm not sure whether this is the same problem that you are experiencing. -- Fergus J. Henderson | "I have always known that the pursuit Galois Connections, Inc. | of excellence is a lethal habit" Phone: +1 503 626 6616 | -- the last words of T. S. Garp.