As I wait for an interim setup to build...

Here's the lowdown on what we're going to get with object:

1) Multiple Inheritance
2) Attributes
3) Object instantiation
4) Method calls

Woo. What we won't get is:

1) Adding parents to a class that's been subclassed or instantiated
2) Adding attributes to a class that's been subclassed or instantiated
3) Method redistpatch
4) Fancy namespace lookups

So you can create classes with multiple parents and multiple attributes, instantiate objects, call methods on the objects, and twiddle the objects attributes. If the parents of "Foo" are "Bar", "Baz", and "Some::Other::Thing" then we'll search those in order, treating the colons as, well, colons, rather than namespace separators. That means no hierarchical namespaces. Yet.

Adding methods to a class means sticking a PMC for the named method in the class namespace. So this:

    ns = global "Some::Other::Thing"
    ns['bar'] = SomeMethodPMC

is how to add the method 'bar' to the namespace "Some::Other::Thing". This will change, and may well not have to be done if the namespace stuff we were asking about earlier is actually in, but I'm not sure yet. I expect I'll find out soon.
--
Dan


--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to