in reply to syntax of map operator
side by sideperl -MO=Concise -e " @vals = map($_*5, @vals); " perl -MO=Concise -e " @vals = map{$_*5} @vals; "
I'm no expert, but it looks like the difference is a new scope being introduced, like$ perl -MO=Concise -e " @vals = map($_*5, @vals); " $ perl -MO=Con +cise -e " @vals = map{$_*5} @vals; " g <@> leave[1 ref] vKP/REFC ->(end) g <@> leave[1 +ref] vKP/REFC ->(end) 1 <0> enter ->2 1 <0> enter + ->2 2 <;> nextstate(main 1 -e:1) v:{ ->3 2 <;> nexts +tate(main 2 -e:1) v:{ ->3 f <2> aassign[t8] vKS/COMMON ->g f <2> aassi +gn[t9] vKS/COMMON ->g - <1> ex-list lK ->c - <1> ex +-list lK ->c 3 <0> pushmark s ->4 3 <0> + pushmark s ->4 8 <|> mapwhile(other->9)[t7] lK ->c 8 <|> + mapwhile(other->9)[t8] lK ->c 7 <@> mapstart lK ->8 7 +<@> mapstart lK* ->8 4 <0> pushmark s ->5 4 + <0> pushmark s ->5 - <1> null lK/1 ->5 - + <1> null lK/1 ->5 b <2> multiply[t4] sK/2 ->8 - + <1> null lK/1 ->8 - <1> ex-rv2sv sK/1 ->a - + <@> scope lK ->8 9 <#> gvsv[*_] s ->a - + <0> ex-nextstate v ->9 a <$> const[IV 5] s ->b b + <2> multiply[t4] sK/2 ->- 6 <1> rv2av[t6] lKM/1 ->7 - + <1> ex-rv2sv sK/1 ->a 5 <#> gv[*vals] s ->6 9 + <#> gvsv[*_] s ->a - <1> ex-list lK ->f a + <$> const[IV 5] s ->b c <0> pushmark s ->d 6 + <1> rv2av[t6] lKM/1 ->7 e <1> rv2av[t2] lKRM*/1 ->f 5 + <#> gv[*vals] s ->6 d <#> gv[*vals] s ->e - <1> ex +-list lK ->f -e syntax OK c <0> + pushmark s ->d e <1> + rv2av[t2] lKRM*/1 ->f d +<#> gv[*vals] s ->e -e syntax OK
versus@ARGV and $ARGV[0] =~ /asdf/ and print;
if(@ARGV and $ARGV[0] =~ /asdf/){ print; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: syntax of map operator
by ikegami (Patriarch) on Jan 24, 2010 at 09:48 UTC | |
by jwkrahn (Abbot) on Jan 24, 2010 at 10:23 UTC | |
by ikegami (Patriarch) on Jan 24, 2010 at 18:49 UTC | |
by jwkrahn (Abbot) on Jan 24, 2010 at 20:10 UTC | |
by ikegami (Patriarch) on Jan 24, 2010 at 21:56 UTC | |
| |
|
Re^2: syntax of map operator
by ikegami (Patriarch) on Jan 24, 2010 at 09:57 UTC |