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.