On 4/18/07, chromatic <[EMAIL PROTECTED]> wrote:
> Making :method mean one thing when used with :vtable, and something
> completely different without, seems like a really bad idea to me, and
> is confusing to the user. The user will also be confused because
> adding :vtable removes it from the namespace, which they didn't
> explicitly ask it to do.
I don't see why this is confusing. Normal vtable methods (the ones defined
in C, for example) are not visible:
Vtable methods defined in C are visible from C. Therefore, it makes
sense that vtable methods defined in PIR are visible from PIR, at
least by default. Making :vtable imply :anon might be unintuitive to
users. Besides that, there's still the problem of :method meaning two
different things with that implementation. Basically, in a non-vtable
sub, there is the :anon flag to detach it from the namespace, but in a
vtable sub, it's detached by default, and the :method flag attaches it
to the namespace. Reversal bad. Continuity good.
--
Alek Storm