in reply to Re^2: Can't seem to match from one varibale to next one.
in thread Can't seem to match from one varibale to next one.

my $record = join q[], @{+shift}; does a whole lot of stuff in one statement, but basically it takes a reference to an array of strings and joins them all into a single string.

It could alternatively be written as:

my $ref_to_list_of_strings = shift @_; my @list_of_strings = @{ $ref_to_list_of_strings }; my $empty_string = q[]; my $record = join($empty_string, @list_of_strings);

... but that sort of coding has been known to cause repetitive strain injuries. Whatsmore, the short way also avoids creating a bunch of temporary variables, so probably runs (ever so slightly) faster.

perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'