Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: detecting $& usage

by bl0rf (Pilgrim)
on Jan 27, 2004 at 21:37 UTC ( [id://324541] : note . print w/replies, xml ) Need Help??


in reply to detecting $& usage

This node falls below the community's threshold of quality. You may see it by logging in.

Replies are listed 'Best First'.
Re: Re: detecting $& usage
by Ovid (Cardinal) on Jan 27, 2004 at 22:06 UTC

    That doesn't work. The mere existence of those variables anywhere in your code will trigger this problem. The following will demonstrate the problem:

    use Benchmark; + my $text = <<'END_TEXT'; this isa test of test text that I am testing END_TEXT + my $start = new Benchmark; + for (1 .. 1000000) { while ($text =~ /(test)/g) { my $foo = $1; } } my $end = new Benchmark; my $diff = timediff($end, $start); print "While not using \$` the code took: ",timestr($diff),"\n"; exit; my $foo = $`;

    Run that a few times, then try commenting out that last line. Even though that line can never be executed, you'll see that the presense of that variable slows the program down.

    Cheers,
    Ovid

    New address of my CGI Course.

      Thanks for clarifying that for me