At 10:31 AM -0800 2/26/02, Brent Dax wrote: >Different scopes, different policies. Outside the core (and in places >with external visibility) we use the Parrot_Foo-type pointer-to stuff; >inside we use FOO. *This is the same policy we have now*, except for >the outside the core part. I want that because I want to present a >unified, simple interface to embedders so they don't have to sweat the >small details.
Hrm. I think I'd prefer to not have differently named typedefs for things and pointers to things. We can hide the core struct from the outside, but I'd rather not change type things. If it's STRING inside, it should be Parrot_String outside, assuming we even expose our internal string type in any way. At the moment I'm not really sure we should be exposing anything past PMC and keys, but... >I *really* don't want their program to not work because >they typed "Parrot_String" instead of "Parrot_String *". They'll run into the same problem if they type char instead of char *. Those things we don't have to worry about--their compiler will catch it, and if it doesn't, well, bugs happen. -- Dan --------------------------------------"it's like this"------------------- Dan Sugalski even samurai [EMAIL PROTECTED] have teddy bears and even teddy bears get drunk