Kenneth Lee wrote: > > > Once a hash has been C<private>-ized, the only way to extend its set of > > entries is via another call to C<private>: > > > > sub new { > > my ($class, %self) = @_; > > bless private \%self, $class; > > private $self{seed} = rand; # okay > > $self{seed} = rand; # dies, can't autovivify > > } > > > > can we eliminate the private keyword and perform this check on all > blessed array/hash references? direct access to entries is prohibited > outside of the bless()ed package: > > package MyAccount; > @ISA = qw(BaseClass); > sub new { > my $class = shift; > bless $class->SUPER::new(@_), $class; er, should be $class->SUPER::new(@_) ... > } > sub creditBalance { > self->{balance} += shift; # valid > } > sub debitBalance { > self->{balance} -= shift; # valid > } > > package main; > $acc = MyAccount->new; > $acc->{balance} *= 1000; # dies > > just IMHO, > kenneth
- RFC 188 (v1) Objects : Private keys and methods Perl6 RFC Librarian
- Re: RFC 188 (v1) Objects : Private keys and metho... Tom Christiansen
- Re: RFC 188 (v1) Objects : Private keys and metho... Tom Christiansen
- Re: RFC 188 (v1) Objects : Private keys and metho... John Siracusa
- Re: RFC 188 (v1) Objects : Private keys and m... Piers Cawley
- Re: RFC 188 (v1) Objects : Private keys and metho... Kenneth Lee
- Re: RFC 188 (v1) Objects : Private keys and metho... Kenneth Lee
- Re: RFC 188 (v1) Objects : Private keys and m... Kenneth Lee
- Re: RFC 188 (v1) Objects : Private keys and metho... Damian Conway
- Re: RFC 188 (v1) Objects : Private keys and metho... David E. Wheeler
- Re: RFC 188 (v1) Objects : Private keys and m... Piers Cawley
- Re: RFC 188 (v1) Objects : Private keys and metho... Nathan Wiger
- Re: RFC 188 (v1) Objects : Private keys and metho... Damian Conway
- Re: RFC 188 (v1) Objects : Private keys and metho... Dave Rolsky
- Re: RFC 188 (v1) Objects : Private keys and metho... Jonathan Scott Duff
- Re: RFC 188 (v1) Objects : Private keys and metho... Damian Conway
- Re: RFC 188 (v1) Objects : Private keys and m... Tom Christiansen
- Re: RFC 188 (v1) Objects : Private keys a... Bart Lateur