Abstract:
We describe a debugger for the lazy functional language Haskell [Hud92]. The idea is to transform a program with a source-to-source transformation to a program that creates an evaluation history when executed. If an error is detected while running the program, the programmer can navigate through the evaluation history, by pointing and clicking in a graphical user interface, to try to find the erroneous definition. The method is compared to other ways of debugging lazy functional programs. Some ideas of improvements are also presented. 1
Citations
|
418
|
Algorithmic Program Debugging
– Shapiro
- 1983
|
|
215
|
Report on the Programming Language Haskell, A Non-strict, Purely Functional Language
– Hudak, Jones, et al.
- 1992
|
|
76
|
FUDGETS - A Graphical User interface in a Lazy Functional Language
– Carlsson, Hallgren
- 1993
|
|
66
|
Algorithmic debugging of lazy functional languages
– Nilsson, Fritzson
- 1994
|
|
50
|
Heap profiling of lazy functional programs
– Runciman, Wakeling
- 1993
|
|
34
|
Debugging standard ml without reverse engineering
– Tolmach, Appel
- 1990
|
|
33
|
Monitoring semantics: A formal framework for specifying, implementing, and reasoning about execution monitors
– Kishon, Hudak, et al.
- 1991
|
|
23
|
Debugging in applicative languages
– O'Donnell, Hall
- 1988
|
|
15
|
Declarative debugging of lazy functional programs
– Naish
- 1992
|
|
14
|
Debugging in a side effect free programming environment
– Hall, O'Donnell
- 1985
|
|
14
|
Adapting combinator and SECD machines to display snapshots of functional computations
– Toyn, Runciman
- 1986
|
|
12
|
A debugging environment for functional programming in Centaur. Research report, Institut National de Recherche en Informatique et en Automatique
– Kamin
- 1990
|
|
8
|
HBC User's Manual. Programming Methodology Group
– Augustsson
- 1993
|
|
6
|
An Algorihmic and Semantic Approach to Debugging
– Hall, Hammond, et al.
- 1990
|
|
3
|
A Proposal for Interactive Debugging of ML Programs
– Kieburtz
- 1985
|
|
3
|
Debugging systems for lazy functional programming languages. Honours dissertation
– Sturrock
- 1992
|
|
2
|
Theory and Art of Semantics Directed Program Execution Monitoring
– Kishon
- 1992
|
|
1
|
Exploratory Environments fo Functional Programming
– Toyn
- 1987
|