Guido van Rossum wrote: > > Earlier, you argued that this is "not an optimization," but rather > avoiding redundancy. I should have responded right then that I > disagree, or at least I'm lukewarm about your patch. Either you're > not using -O, and then you don't care much about this; or you care, > and then you should be using -O. > > Rather than encrusting the code with more and more ad-hoc micro > optimizations, I'd prefer to have someone look into Tim's suggestion > of supporting more efficient breakpoints... I didn't think of this before, but I just realized that I have something like that already in Stackless Python. It is possible to set a breakpoint at every opcode, for every frame. Adding an extra opcode for breakpoints is a good thing as well. The former are good for tracing, conditionla breakpoints and such, and cost a little more time since the is always one extra function call. The latter would be a quick, less versatile thing. The implementation of inserting extra breakpoint opcodes for running code turns out to be easy to implement, if the running frame gets a local extra copy of its code object, with the breakpoints replacing the original opcodes. The breakpoint handler would then simply look into the original code object. Inserting breakpoints on the source level gives us breakpoints per procedure. Doing it in a running frame gives "instance" level debugging of code. Checking a monitor function on every opcode is slightly more expensive but most general. We can have it all, what do you think. I'm going to finish and publish the stackless/continous package and submit a paper by end of September. Should I include this debugging feature? ciao - chris -- Christian Tismer :^) <mailto:tismer@appliedbiometrics.com> Applied Biometrics GmbH : Have a break! Take a ride on Python's Kaiserin-Augusta-Allee 101 : *Starship* http://starship.python.net 10553 Berlin : PGP key -> http://wwwkeys.pgp.net PGP Fingerprint E182 71C7 1A9D 66E9 9D15 D3CC D4D7 93E2 1FAE F6DF we're tired of banana software - shipped green, ripens at home
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4