At 1:46 AM -0800 2/16/02, Brent Dax wrote: >The three subsystems I'm exposing are strings, PMCs, and vtables. These >changes take care of strings; PMCs and vtables are more involved, and it >may take some time before I can get them working. [Snip] >If anyone has problems with any of this, let me know.
I do, alas. What you're looking to do looks pretty good from a current practices perspective, but I've a mildly different view. Firstly, embedders shouldn't see much of anything at all. The things you're proposing really fall into the extension arena, which is fine. However... Details of strings, PMCs, and vtables shouldn't be exposed to people writing extensions. Strings and PMCs should be opaque types, and vtables shouldn't be exposed at all, to hide the details of the implementation. Structure should be completely unexposed. Only the core and PMC class authors should see the vtables, and only people actually writing them in C. (PMC classes written in perl/python/ruby/whatever should see the interface their particular HLL exposes) Probably a good first step for an extending and embedding PDD, if we want just a single one, is to define what's visible where, and what's black magic in other places, just so we can keep this stuff straight. Dan --------------------------------------"it's like this"------------------- Dan Sugalski even samurai [EMAIL PROTECTED] have teddy bears and even teddy bears get drunk