2009/1/14 Marcus Denker <denker@iam.unibe.ch>:
On 13.01.2009, at 15:51, Igor Stasenko wrote:
2009/1/13 Marcus Denker <denker@iam.unibe.ch>:
On 09.01.2009, at 16:19, Stéphane Ducasse wrote:
one of the point about breakpoint is that they should not get the method dirty. I know that some breakpoint code has been harvested but I do not remember how to use it.
There is a very simple breakpoint mechanism in Pharo (in Squeak, too, but it was a bit broken there).
To try: There is a "toggle break on entry" item in the menu of methods in the old browser.
Technically, this just recompiles the method with a call to #break at the beginning.
is it better than doing a trick with method dictionary, as i showed in example?
I did not check your example... but it sounds that it is at least as good. Maybe the source-manipulation was done to later support breakpoint anywhere in the code (not only the beginning)
well, i don't see a need in inruding into a source code anyway. For breaking in the middle of method, one can do following: - intercept entry to a method (in a way like i doing) - step bytecodes manually and break if IP equal to designated value where breakpoint is set. similar to what debugger does, if i'm not mistaken. A more easy to implement could be a breakpoints like 'break at seding a message #xxxx from given method' this can be done by replacing selector #xxxx in given method with special #breakHerePlease and implement #breakHerePlease method properly.
Marcus
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Best regards, Igor Stasenko AKA sig.