"In general" is misleading.
In the particular case where you've no variables in the string, sure, maybe, but it's not an interesting use case.
#!/usr/bin/perl
use strict;
use warnings;
use Benchmark ('cmpthese');
my $dqv = 0;
my $sqv = 0;
cmpthese(1000000, {
double => \&dq,
single => \&sq,
});
sub dq {
$dqv++;
my $str = "see $dqv run
+ and $dqv";
}
sub sq {
$sqv++;
my $str = 'see '.$dqv.' run
+ and '.$dqv;
}
The difference is substantial, but only when you make perl work harder to find the variable, hence the extra spaces in the string.
Rate double single
double 943396/s -- -37%
single 1492537/s 58% --
|