The Haskell community has a number of great compilers and interpreters, but no great debugger. This page summarizes the work currently being done by the Haskell community to provide ways of debugging lazy functional languages. This area of research is very active, and hopefully we will get our great debugger soon.
Debugging Technologies is a broad camp, including profilers and automated testing tools. I appreciate any and all help compiling this information, including summaries of specific techniques or tools, web page references, etc. Later, this page will move onto the haskell.org web site.
First, we have a list of the various debugging techniques and technologies.
|
Debugging Techniques |
| Tracing Debuggers |
| Declarative Debuggers |
| Profiling Tools |
| Testing Frameworks |
| Interpreters |
Next, we have a list of debugging tools available right now for Haskell98. I've not listed the profiling tools, because all the compilers come with some version of profiling, though their capabilities vary considerably - see the individual documentation for each compiler for more details. Hopefully at some point in the future, all the compilers will also come with a debugger :-)
|
Debugging Tools Available Now (that work on Haskell98) |
||
| Basic Technology | Tool | System |
| Tracing Debuggers | Tracer in nhc | nhc |
| HOOD | Haskell 98 | |
| A Great Opportunity | ? | |
| Declarative Debuggers | Another Great Opportunity | ? |
| Testing Frameworks | QuickCheck | Haskell 98 |
| Auburn | Haskell + FFI | |
| Interpreters | Hugs | |
This is list of people and projects that are currently active in the Debugging Haskell community. Green means there is a usable tool you can download.
|
Currently Active Debugging People, Projects and Tools |
||||
| Style | Name | Location | System/Compiler | Status |
| Tracing | ART | York, England | nhc | Just starting ART, is a follow on project to the Redex Trails project. |
| Richard Watson | University of Southern Queensland, Australia OGI for Summer |
Hugs | Developing debugger technology in Fall 2000 at OGI. | |
| HOOD | OGI | Haskell98 + unsafePerformIO |
Demo at Haskell Compiler Implementers Workshop. Releasing early May. |
|
| Declarative | Henrik Nilsson | Linköping University, Sweden | Freja | Looking for opportunities push his system further. |
| Buddha | University of Melbourne, Australia | STG Hugs/GHC | Ongoing development, no release date. | |
| Profiling | GHC | Cambridge, England | GHC, STG Hugs | Profiling tools available. |
| Testing | QuickCheck | Chalmers, Sweden | Haskell98 | Library released, work ongoing. |
| Auburn | York, England | Haskell + FFI | V2.3 Released | |
| Interpreters | Hugs | OGI | Hugs | Best Interpreter for Haskell98. |
| GHCi | Cambridge, England | GHC, et. al. | Ongoing development. | |
These are people who have recently been active participants, but have not been seen debugging for a while. If you are still active, then just yell!
|
Recently Active Debugging People |
||||
| Style | Name(s) | Location | System/Compiler | Last Seen Debugging Haskell... |
| Tracing |
Alastair Penney - (FIT) |
Bristol, England | 1999 | |
| Jan Sparud - (Redex Trails) | Chalmers, Sweden York, England |
nhc | 1997 | |
| ? | Andrew MacGibbon | Auckland University | Classic Hugs | 1997 |
My understanding is that all the information on this page is public knowledge. I did dig around the web quite a bit to compile this list, so if anyone is unhappy about being referenced or the description of your tool, then please e-mail me, and we'll fix the problem.
This page was last update on Wednesday, October 18, 2000 by Andy Gill