If companies are willing to invest in development, they will get the tools they want.
Hmmm... chickens and eggs. I don't see a lot of *companies* using Haskell right now. And probably they won't until the tools they want are available (and more...) :-(
I think the biggest problem with Haskell debugging is visibility of intermediate values. I sometimes end up planting Debug.Trace calls in the code, but that can be clumsy -- one of the reasons I develop in Hugs rather than GHC is the speed of recompilation when adding transient code like this.
(Simple) facilities I'd like to see to help with debugging include:
- A common version of Debug.Trace that is part of the standard prelude (i.e. no additional imports needed).
- A common version of assert that is part of the standard prelude, which implementations are free to elide.
- "Remote observation": a system like Hugs might provide a command option (i.e. without code modification) to observe evaluation of a named function in evaluation of a larger program. Using the "observe" functions I found to be rather awkward because if too many observations are coded they get mixed up, so I don't use them at all. But if a simple top-level command could observe named functions then it would be easy to use more selectively.
Also, a convention for embedding test cases in module code which can be checked by the compiler is a possibility that I think was mentioned here some time ago.
#g
------------ Graham Klyne For email: http://www.ninebynine.org/#Contact
_______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell