On Sun, Jul 17, 2011 at 4:21 AM, Moritz Lenz <mor...@faui2k3.org> wrote:
> Question to the Parrot developers: How could I implement DESTROY methods
> in Rakudo? Is there any vtable I can override, or so? Note that such a
> method might itself allocate new GCables. While not urgent, it's
> important for us in the long run.

We do have the ability to override VTABLE_destroy in a C-based PMC
type, but that is not exposed through Object PMC. I suspect this
capability could be exposed through 6model and the Rakudo PMC
infrastructure, and a Sub could be invoked from there. Because of the
sensitive nature of the timing, and because this has obviously not
gotten any good test coverage or developer attention, it probably
won't work so well.

This hasn't been a high-priority issue so far, either amonst users or
developers. If people are interested in seeing this happen, failing
use-cases or even tickets requesting fixes would be a great place to
start. My suggestion so far would be to add in a destroy override to
6model, try to use it, and see what blows up. Then open a ticket with
Parrot and we'll do our best to make it work the way you need.

--Andrew Whitworth

Reply via email to