Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re: when $$s =~ m/\G.../gc is too verbose

by chromatic (Archbishop)
on Feb 02, 2006 at 22:36 UTC ( #527478=note: print w/replies, xml ) Need Help??

in reply to when $$s =~ m/\G.../gc is too verbose

Clever. I usually put a local in there though, just to avoid trouble.

  • Comment on Re: when $$s =~ m/\G.../gc is too verbose

Replies are listed 'Best First'.
Re^2: when $$s =~ m/\G.../gc is too verbose
by stefp (Vicar) on Feb 03, 2006 at 00:09 UTC
    Oops, I forgot it. I always localize or lexicalize variables proper to a subroutine That's why I never noticed that $_ is not implicetely localized at the entry of a subroutine contrary to what I thought.

    Sadly, localizing *_ or $_ doesn't play well with reference shuffling of strings with positions.

    sub lexer { (*_) = @_; print $1 if m/\G(A)/gc || m/\G(B)/gc ; } my $a = "AB"; lexer \$a; ; lexer \$a;
    This prints "A" then "B"; If I add a local *_ or a local $_, at the entry of the lexer routine, that does not work anymore. So much for a cool trick.

    -- stefp

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://527478]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (3)
As of 2016-10-22 23:53 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (299 votes). Check out past polls.