in reply to Non-greedy substitution
sub name_join { return '' unless @_; return $_[0] if 1 == @_; return join ', ', @_[0 .. $#_ - 2], "$_[-2] and $_[-1]"; } [download]