At 07:12 AM 4/5/2002 +1000, Damian Conway wrote:
>Melvin Smith wrote:
>More generally, it also depends whether you think of out-of-band properties as
>nouns or adjectives. For example:
>
>         class Toaster is silver is shiny is hot is little {...}
>
>vs:

After rereading the example, this one bugs me.

This is compile time, and should be an inline property.

I see the potential for another Perl 'non-warning' bug, where
someone typed:

class Appliance {
....mucho lines of code...
}

class Toaster is appliance {
....
}

This trivial example would of course be spottable to all but the blindest
programmer, but what about the more conceivable...

class ToasterException is MyExceptionLibinHungarianNotationBurntBread
{
}

Oops, the exception is really MyExceptionLibInHungarianNotationBurntBread
but Perl6 wouldn't complain, right? It creates a property.

It scares me to be able to _declare_ a new attribute with the same operator
that I typically use to _inherit_ an existing class or property.

Why not make 'is' a little tidier; require us to declare attributes inline, and
let us tag _objects_ (not classes) at runtime with different notation?

-Melvin


Reply via email to