Affiliation:
1. University of Kent, UK
Abstract
Existing algorithmic debuggers for Haskell require a transformation of all modules in a program, even libraries that the user does not want to debug and which may use language features not supported by the debugger. This is a pity, because a promising approach 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 observations 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 technique 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.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
6 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. CSI: Haskell - Tracing Lazy Evaluations in a Functional Language;The 35th Symposium on Implementation and Application of Functional Languages;2023-08-29
2. Towards bidirectional live programming for incomplete programs;Proceedings of the 44th International Conference on Software Engineering;2022-05-21
3. A Web Tool for XQuery Debugging;Lecture Notes in Computer Science;2021
4. Declarative Debugging of XML Queries;Practical Aspects of Declarative Languages;2021
5. A Semantic Framework to Debug Parallel Lazy Functional Languages;Mathematics;2020-05-26