
On Thu, 10 Jul 2008, Don Stewart wrote:
thomas.dubuisson:
I could try GHC's new debugger. But my experiences with it so far have shown that for all but the most trivial programs possible, it becomes intractably difficult to figure out what the debugger is actually showing you.
At times I think of ghcid as the anti-gdb. If there's a series of let bindings, each mutating the predecessor, its enjoyable to see the debugger start at the bottom and crawl its way back up.
I'd like to relate a debugging effort this week. A colleague had an exception thrown from deep within a large body of code, we knew not where.
Let me relate this to the Extensible Exception thread of the Haskell-Library list. Your exception - was it an 'error' or an IO exception? If it would be an exception (like "file not found") and we would use ErrorT monad for exceptions with specific types for the exceptions, then it would be clearer where the exception can come from. However if it was an error, then we cannot handle it terminally by some exception-catching like mechanism.