At 07:12 AM 4/5/2002 +1000, Damian Conway wrote:
>Melvin Smith wrote:
>
> > 1) In Perl6 we can tag metadata properties to an object using the 'is' 
> keyword.
>
>Err, no. We can add properties to a *class* using C<is>.
>To tag objects (which are run-time phenomena) we'd use C<but>.

Oops, ok this was my misunderstanding, and answers one of my concerns.

> > 2) Also, in Perl6 we can derive a new class from an ancestor using 'is'.
>
>Correct.
>
>
> > 3) Thirdly, we can specify that the class is an 'interface'.
> >
> >  From my understanding 'interface' is a keyword here. Fair enough.
>
>No. C<interface> is a standard property that can be applied to classes.
>So it's really just an instance of usage (1).
>
>
> > I'd simply like to propose using 'has' for properties for 2 reasons:
> >
> > 1) The above is, to me, fuzzy to use it for all 3 of the cases.
>
>Only two cases.
>
>
> > 2) 'has' is more intuitive for saying "This object _has_ this property".
>
>Sure, but C<is> is never applied to objects. Object properties are specified
>by creating attributes and methods.

The redundancy of class and object "properties" being specified
2 different ways was what bugged me but this was because
of my misreading (read: light browsing ;)  ) of the last Apoc/Exeg, I s'pose.

>Yep. And linguistically (in English at least) we say "is" both when describing
>copulative relationships (like inheritance) and when ascribing adjectival
>properties to classes. So Perl 6 does too.

Well, "is a" in the former, to be specific; but "is" is close enough.

-Melvin

Reply via email to