My first though was along the lines of :nonegindex. But that's long and unwieldy. What about something with an argument:
# $foo[-1] returns 'Illegal Array Index Error' @foo :negindex( value => 'Illegal Array Index Error' ); # $foo[-1] normal behavior @foo :negindex( REVERSE ); # $foo[-1] apply some filter ( filter takes array, index as args) @foo :negindex( filter => sub { return -1 * $_[0]->[ abs( $_[1]) ] } ) +; # $foo[-1] returns undef, exists( $foo[-1] ) is false. #@foo :negindex( DO_NOT_WANT ); @foo :negindex( NO_EXIST ); # And to anticipate all future feature creep: # $foo[-1] returns sends an email message @foo :negindex( email => bob@example.com );
TGI says moo
In reply to Re^3: A pair of "mathematical" attributes for arrays?
by TGI
in thread A pair of "mathematical" attributes for arrays?
by blazar
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |