http://qs321.pair.com?node_id=1221225


in reply to Re^2: Recap: The Future of Perl 5
in thread Recap: The Future of Perl 5

I agree, your proposed syntax is much nicer.

I did see somethings surprising.

In:

class Point { has Num ($x, $y); method inverted () { return Point->new( x => $y, y => $x ); } }

you have $x instead of $self->x (likewise for $y).

I found this surprising, and had to pause to think for a second or 2. How common is it in other OO languages to not need "self" to reference instance variables in instance methods? Personally, I don't recall ever seeing it done without "self". (Been so long since I last used C++ that I had forgotten.)

More surprising was:

class Cache::LRU { use Hash::Ordered; our $num_caches = 0; # class data (unused +in this example) my $x = Hash::Ordered->new; # private instance da +ta has UInt $max_size = 20; # public instance dat +a method set ( Str $key, $value ) { if ( $x->exists($key) ) { $x->delete($key);

where $x is also an instance variable.

(Just some additional thoughts.)