sub do_something { my( $self, %args ) = @_; my( $scalar ) = $args{scalar} || eval { $self->{scalar} } || $self->SCALAR; my( @list ) = ( eval { @{ $args{list} } or 1 } ) ? @{ $args{list} : $self->LIST; }