>> 
>> https://pharo.fogbugz.com/f/cases/15516/add-suggestion-for-breakpoint 
>> <https://pharo.fogbugz.com/f/cases/15516/add-suggestion-for-breakpoint>
>> 
>> this is of course completely untested… it works only when there is no 
>> unaccepted
>> text in the editor and maybe only within Nautilus.
>> 
>> And of course existing breakpoints are not yet in any form visualised in the 
>> editor.
> 
> This is in 50041. Please use with care… still needs work to be really usable.
> 

I now finished to add everything from Clara’s original SmartBreakpoints project.

There are still lots of things that need to be done

-> Something goes wrong when re-adding a one-shot breakpoint again.
-> Adding should be disabled when the editor has non-submitted code.
-> The experience in the debugger is not that nice
         (need to think about using the <debuggerCompleteToSender> trick and
         explore the filtering capabilities of the debugger)

I am now continuing to flesh out the Reflectivity features:

-> hook AST generation is now done by HookGenerator
-> correct hooks are already generated for the case that a link passes
    arguments to the meta object (see the RFReification hierarchy, for now
    we have only #object *and* actual compiling does not yet work due to 
missing 
    semantic analysis of the AST snippets for the hooks)
-> We have support for “virtual” meta objects. Any valid reification can be the 
metaObject
    (this is fun for #node).

TODO
- add all reifications for all nodes (#arguments, #node, #context, #value 
#name, #arg1…)
- do semantic analysis correctly and add test for links with arguments
- add conditions with parameters (e.g. for object specific links: [:object | 
object == myObject])
- handle primitives: when putting a link on a primitive method, wrap the 
compiledMethod instead
  of AST manipulation.
- ….

I will continue to flesh it out and send examples to the list as these things 
start to work for real.


        Marcus

Reply via email to