my experience with ghci debugger extensions

pepe mnislaih at gmail.com
Mon Feb 9 15:12:57 EST 2009


Hi,

>
> Simon Marlow wrote:
>> If you felt like working on this yourself, possibly with Pepe, then  
>> we'd be happy to support in any way we can.
> Thanks. It may happen though it is not probable. I do not know the  
> code so anything non-trivial is a significant effort and my free  
> weekends and evenings are sparse :-(
> If I would do anything, should it be posted here, sent to Pepe, or  
> attached to the ticket?
> Is it a habit to indicate in the ticket that somebody started coding  
> it actually (especially if it takes longer to implement)?
>

Peter, it is best if you attach everything to the ticket. If you want  
to signal that you started coding on a ticket, just take ownership of  
it.

> As for as /:next/ command:
> Like Pepe indicated, I do not have idea how to do it without working  
> _result and without dynamic stack. Though dynamic stack should not  
> be that hard since  how otherwise could profiler count ticks for  
> cost centers.
> And dynamic stack would be great. It would create new options where  
> to store lists of free variables of selected expressions :)

Having (a kind of messy approximation of) a dynamic stack is possible  
with a variant of the cost center stacks mechanism used for profiling.  
But the downside is that code and libraries would need to be compiled  
for debugging. Nevertheless, I believe that having a true dynamic  
stack would make debugging so much simpler.

> Ok, I did not understand this part a bit till I did not skim over
> http://www.haskell.org/~simonmar/papers/ghci-debug.pdf
> Maybe that paper should be mentioned on the wiki pages about  
> debugger. Something like: "If you do not understand why ghci  
> debugger is limited in such a strange way read this."

Debugging for lazy functional languages is a hard problem. The GHCi  
debugger is no panacea.
But you are right in that the current state of things can be improved  
in several ways.
However, the Simons have already enough things in their hands; it is  
up to us to step forward and help.
Unfortunately, my time is also very limited, as I am trying to get a  
degree here.
I am happy to support Peter and anyone else who wants to hack on the  
debugger, and I will continue maintaining the code around :print. But  
right now I don't think I can find the time to work on the tickets  
brought up in this discussion.


Cheers,
pepe


More information about the Glasgow-haskell-users mailing list