of Real-World Haskell Programs: Deriving Dependencies from the Cost Centre Stack
2015
Existing algorithmic debuggers for Haskell require a transforma- tion of all modules in a program, even libraries that the user does not want to debug and which may use language features not sup- ported by the debugger. This is a pity, because a promising ap- proach to debugging is therefore not applicable to many real-world programs. We use the cost centre stack from the Glasgow Haskell Compiler profiling environment together with runtime value obser- vations as provided by the Haskell Object Observation Debugger (HOOD) to collect enough information for algorithmic debugging. Program annotations are in suspected modules only. With this tech- nique algorithmic debugging is applicable to a much larger set of Haskell programs. This demonstrates that for functional languages in general a simple stack trace extension is useful to support tasks such as profiling and debugging. Categories and Subject Descriptors D.2.5 (Software Engineer- ing): Testing and Debugging
Keywords:
- Correction
- Cite
- Save
- Machine Reading By IdeaReader
26
References
0
Citations
NaN
KQI