On Wed, 21 Apr 2004, Brent 'Dax' Royal-Gordon wrote:
> Which actually brings up an interesting question:
>
> class Silly {
> has $.thing=1;
> has @.thing=(2, 3);
> has %.thing=(4 => 5, 6 => 7);
> }
I had assumed that'd be illegal: each of $.thing, @.thing and %.thing
autogenerates a method named thing. I would hope that is illegal, for my
head would hurt otherwise keeping track of what a particular "thing"
means.
We surely don't allow the following in the same class:
has @.thing is Array of Cat;
has @.thing is Array of Dog;
It seems to me that the $.thing/@.thing issue is similar (though the
sigil makes this easier for the compiler):
has $.thing is Scalar;
has @.thing is Array;
--Abhijit