in reply to Can we do without auxiliary variable here?

Some clear solutions:

my $s = join('', @_); $s =~ s/^/$prefix/mg; print $s;
print map { $prefix . $_ } split /^/m, join('', @_);
print apply { s/^/$prefix/mg } join('', @_);
print join('', @_) =~ s/^/$prefix/rmg;

apply comes from List::MoreUtils

The last requires Perl 5.14 for /r.