> 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. > "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. 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 ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
