Le 2 mars 2015 05:38, "Marcus Denker" <marcus.denker@inria.fr> a ��crit :
>
> Hi,
>
> The tiny progress of today: I reviewed the code for the MetaLink from Clara���s Breakpoints
> and added it to Pharo4.
Yay! There was also one extension method in Slot to make work with those, have you seen it?
I has as state:
>
> metaObject�� �� �� the target
> selector�� �� �� �� �� �� �� �� what to call
> arguments�� �� �� ��which args?
> condition�� �� �� �� �� �� �� ��true, false or [block evaluating to a boolean]
> control�� �� �� �� �� �� �� �� ��before, after, replace���
> level�� �� �� �� �� ��active at base or meta level? (to stop meta-recursion)
> nodes�� �� �� �� �� ��where it is installed.
>
>
> ------ Examples -----
>
> MetaLink new
> �� �� �� �� metaObject: Halt;
> �� �� �� �� selector: #now.
>
> MetaLink new
> �� �� �� �� metaObject: [ self halt ];
> �� �� �� �� selector: #value.
>
> MetaLink new
> �� �� �� �� metaObject: #node;
> �� �� �� �� selector: tagExecuted
>
> or one that can only be installed on Message send:
>
> MetaLink
> �� �� �� �� metaObject: #object;
> �� �� �� �� selector: perform:withArguments;
> �� �� �� �� arguments: #(selector arguments);
> �� �� �� �� control: #replace
>
>
> Of course, the real core of the whole things is next: An AST transforming compiler plugin
> that takes these links into account.
> Of course, exact details might change (e.g. control using symbols or classes (ControlBefore)���,
> do we call it instead, replace or even AOP-style ���around���?
>
> The first will be just a #before with no arguments, as this is what we need for simple breakpoints.
>
> �� �� �� �� Marcus