On 24 Sep 2000, Perl6 RFC Librarian wrote:
I still hope that it doesn't get as complicated as all this. I know
there are arguments out there for specifying integer size and signedness
but I can't imagine that adding this stuff is a good thing.
> Note that multiple types cannot be specified on the same line. To
> declare variables of multiple types, you must use separate statements:
>
> my int ($x, $y, $z) :64bit;
> my string ($firstname, $lastname :long);
Not so bad if I don't have to worry about 64bit or long. I'd rather not
worry about integer versus string, but I assume there are some
performance gains in doing so.
> $a[0] :32bit = get_val; # 32-bit
> $r->{name} :private = "Nate"; # privatize single value
> $s->{VAL} :laccess('data') = ""; # lvalue autoaccessor
Here I'd prefer to see private and laccess as functions.
private $r->{name} = 'Nate';
laccess $s->{VAL} = '';
And as far as the :shared modifier goes I much prefer the our keyword.
Alan Gutierrez