On Wed, 4 Mar 2009, Timothy S. Nelson wrote:
# Method descriptor objects: .name, .signature, .as, .multi, .do.
In Callable.pod
.name is on Routine
.signature is on Code
.do is on Code (I'm guessing here)
I'm not sure where the others go:
.multi must be on something that gets it into Routine
.as must be on something that gets it into Method (higher?)
See S12:1987 for this.
Are these line numbers you're using? POD line numbers? I don't see
a line 1987 in this (the file isn't big enough).
I still believe that must be interpreted as
there being a specific MethodDescriptor object on which all of .name,
..signature, .as, .multi, .do are attached.
I'm guessing that .^methods should really return a bunch of Method
objects.
No, MethodDescriptor objects. See S12:1987.
Hmm. I don't like it :). You may be right, but I was assuming that
we were returning *Method* objects.
I asked $Larry about this on IRC; specifically I asked whether we were
talking about a MethodDescriptor object or an Array of Method. His answer:
that's one of the things I was gonna let the implementors flesh out
feel free to speculate and label it so :)
just keep it as simple as possible, but no simpler...
In light of this, I'd argue that we should do it as an Array of
Method, until we have a reason to think otherwise. I'm expecting, of course,
that if the implementors think this is a bad idea, they'll chime in and say so
:).
Furthermore, I'd argue that if the specs don't name a particular
object type (ie. "method descriptor" isn't, "MethodDescriptor" would be) then
we're free to try to figure it out ourselves.
# Attribute descriptor objects: .name, .type, .scope, .rw, .private,
.accessor, .build, .readonly.
I wonder what type would be appropriate for an attribute descriptor
object. I haven't done anything with these either.
See S12:1999.
Only has 1764 lines in my editor. And wc says 1763.
I presume you're implying there should be an AttributeDescriptor
role, yes?
...I'm not sure I agree that there should be an AttributeDescriptor
role.
:)
---------------------------------------------------------------------
| Name: Tim Nelson | Because the Creator is, |
| E-mail: wayl...@wayland.id.au | I am |
---------------------------------------------------------------------
----BEGIN GEEK CODE BLOCK----
Version 3.12
GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V-
PE(+) Y+>++ PGP->+++ R(+) !tv b++ DI++++ D G+ e++>++++ h! y-
-----END GEEK CODE BLOCK-----