On Wed, Sep 9, 2015 at 10:04 PM, Marcus Denker <marcus.den...@inria.fr>
wrote:

> Hello,
>
> The idea of Reflectivity is to be just that: a way to “hook” into code
> without changing the source… this is a similar use case like
> the one described yesterday:
>
> link := MetaLink new
>         metaObject: MyNotifyer;
>         selector: #notifyChangedVaNamed:;
>         arguments: #(name).
>

Ah, this is really cool and powerful, thanks!

I imagine in time tools will be built to have better control of this (for
example now stack trace in debugger looks really magical (suddenly there's
a frame from nowhere)), but all in time.

Now when code is recompiled (loaded), you need to re-install the links in
> those methods, it does not happen
> automatically.
>

Are there any scenarios when method is recompiled during regular Pharo run
and without user's invocation? In other words, if I install the links after
the package has been loaded/updated and I will not be changing the code,
will I be safe?

Also I am little bit scared that without tools I am brewing a recipe for
disaster, because this is very powerful and not controlled... maybe I
should do real AST rewrites and recompile instead... or investigate if I
can somehow annotate Nautilus and debugger to show the links... hmm...

Peter

Reply via email to