[Pharo-project] Better debugging...

Mariano Martinez Peck marianopeck at gmail.com
Mon Apr 25 19:25:02 CEST 2011


On Mon, Apr 25, 2011 at 8:02 PM, Alexandre Bergel
<alexandre.bergel at me.com>wrote:

> > Same thing for debugging. Why should I see the execution as a bunch of
> stack frame?
> > "How to set a breakpoint based on the object state?"
> >
> > self haltIf:
>
> I know this. But this is not an operation supported by the environment. It
> is like a refactoring. I do not need the refactoring browser to do
> refactoring. But since it is one-click away in the refactoring browser, I
> refactor my code constantly.
>
>
I understand. I was just pointing you the "backend" in case you were not
aware.


> > "Are all objects responsible for an odd execution or is there just a
> particular one?"
> >
> > This is one of the things I was doing with the "used objects" stuff,
> where I used a bit (the last one) in the Object Header and I modify the VM
> to intercept all messages sent to such object and flag it as "used" when
> they receive a message. So you could do:
> >
> > | results |
> > results := UsedObjectDiscover trace: [ self blah ].
> > and results understands amountOfUsedObjects, amountOfUnusedObjects, blah
> > You can also query which objects where used for the [ self balh]  in this
> case...
>
> Same thing. Having it embedded in the programming environment is
> challenging. Nobody has done this. The only significant improvement of
> debugger is omniscient. But we can go way further.
>
>
I understand. But no matter the UI / environment / frontend , you will need
first the "backend" (call it as you want).

Cheers



> Alexandre
>
> >
> > "What is the exact difference of execution if I slightly change a
> method?"
> > "If I call #foo it works, if I call #foo2 it does not work. Why? What are
> the objects that appears with #foo2 that do not appear with #foo?"
> > All these questions are essential in my opinion.
> >
> >
> > I agree.
> >
> > Code profiler and code debugger are pretty poor. I can continue with test
> code coverage tools.
> > After all, Computer Science is a pretty young science.
> >
> > Cheers,
> > Alexandre
> >
> >
> >
> > On 25 Apr 2011, at 07:34, Craig Latta wrote:
> >
> > >
> > > Hi Alexandre--
> > >
> > >> Debugging, as well as profiling, is a topic that everybody got it
> > >> wrong. We still debug an application in oo in the same way that
> > >> people debugged their C program: thinking in term of call stack and
> > >> stack frame instead of objects.
> > >
> > >     So tell us more! :)  How do you express causality?
> > >
> > >
> > > -C
> > >
> > > --
> > > Craig Latta
> > > www.netjam.org/resume
> > > +31 06 2757 7177
> > > + 1 415 287 3547
> > >
> > >
> > >
> > >
> >
> > --
> > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> > Alexandre Bergel  http://www.bergel.eu
> > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > --
> > Mariano
> > http://marianopeck.wordpress.com
> >
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>
>
>


-- 
Mariano
http://marianopeck.wordpress.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gforge.inria.fr/pipermail/pharo-project/attachments/20110425/4d5e8e0d/attachment.htm>


More information about the Pharo-project mailing list