"Chip Salzenberg" <[EMAIL PROTECTED]> wrote:
On Tue, Jan 24, 2006 at 08:49:55PM -0000, Jonathan Worthington wrote:
"Chip Salzenberg" <[EMAIL PROTECTED]> wrote:
>I'd prefer to reuse something in the engine already for those callbacks.
>If a lightweight callback mechanism, with parameter, doesn't already
>exist, then you could either use a closure for -that- (eh, too >expensive)
>or else invent such a mechanism for general use, with yourself as first
>customer.

There is a mechanism used to do this kinda thing for exit handlers
(src/exit.c), but it doesn't look particularly general.  I guess leo will
know if there is something I've missed - leo, thoughts?  I guess such a
mechanism probably shouldn't be much work to implement, though, and would
certainly be a nice, clean answer.

Words I love to hear.  Er, read.

;-)  It's in my task list, I'll try and get onto it soon.

>I imagined that the references would only ever be to -PMC- registers...?

I wouldn't have thought so. I thought in Perl 6 the lowercased types like
"int" were to go in the I registers.

Yes...

I think we'd still want to be able to create a reference to them though.

No, sorry.  "my int $a" means that $a is fast (good) but can't participate
in any of the reindeer games like CALLER, MY, and references (bad).

Thanks for the clarification.

In the .NET case, there's no reason not to use I registers for its
integers.

Urque.  So the real Reference PMC type actually doesn't do everything you
want, and there's no point in waiting for it.  As for your .Net-specific
pointer PMC, if you're already keeping a contecxt pointer and an index, all you need in addition is a type enum for [INSP] and you're set. (Or separate
subclasses of the pmc, whichever works better for you.)
Yup, got that spec'd out now and can start hacking on it tomorrow, maybe even get something working. Thanks for all of your help - very much appreciated.

Jonathan

Reply via email to