Hi all!
MethodWrappers are implemented via object-as-method, which implement #run:with:in:. Other examples in the current Trunk image include ObjectsAsMethodsExample, WrappedBreakpoint, and TestCoverage. While MwMethodWrapper is an Object, WrappedBreakPoint and TestCoverage are both ProtoObject.
Method wrappers could be regarded as proxies for compiled methods, which means they should inherit from ProtoObject, too.
The MethodWrappers package mostly adds (1) a flexible composite pattern for object-as-method (i.e. wrap the wrappers) and (2) a convenience protocol around object-as-method, which includes a blacklist of methods not to wrap. :-)
Best,
Marcel
Am 29.07.2020 06:40:27 schrieb Chris Muller <[hidden email]>:
IMO, this should be integrated into the base image.
On Tue, Jul 28, 2020 at 5:26 AM Marcel Taeumel <
[hidden email]> wrote:
Hi all!
I revived (and cleaned-up) a tracing project for Squeak our group did several years ago:
And the end of the readme.md, you will find pointers to papers that (more or less) made use of this approach.
It uses MethodWrappers, which I also pushed to GitHub:
Happy Squeaking!
Best,
Marcel