Simon Cozens <[EMAIL PROTECTED]> wrote:
> On Mon, Nov 19, 2001 at 10:58:55AM +0000, Dave Mitchell wrote:
> > Presumably we should have a small, *fixed* number of private bits in
> > the flags word available for use by vtable implementors (ie to stop
> > people getting carried away with the notion that they can steal any
> > bits which do not otherwise appear to have been allocated yet ;-)
> 
> If you look at the way I've done it in the code and the docs,
> vtable implementors have a macro representing the start of private flags. 
> 
> I've reserved 8 flags, starting the private stuff at 9. If we need to reserve
> more, we rewrite the macro, and all the vtable stuff should recompile, unless
> they're using an reasonable number of bits. There will, of course, be warnings
> and guidelines about what constitutes "reasonable" in the documentation; in
> the worst case, they'll have to use the flag structure we provide as "fast"
> flags and store a separate flags field in their data structure for
> less-commonly accessed stuff.

Hmmm - of course, once Parrot is out there in the wild with the equivalent
of XS vtables, we won't have the luxury of recompiling.

I'd prefer the "you have 8 private bits, the rest is Parrot's" approach
rather than the "Parrot has 8 bits and the rest is yours for now, we'll
let you know when we want to grab some more back off you" approach. I think
that way, we'll have less backwards compatibility issues for 3rd party code.

Just MHO and $0.02's worth :-)

Dave.

Reply via email to