ikegami has asked for the wisdom of the Perl Monks concerning the following question:
>perl -MO=Concise,f -e"sub f { return $x }" main::f: 5 <1> leavesub[1 ref] K/REFC,1 ->(end) - <@> lineseq KP ->5 1 <;> nextstate(main 1 -e:1) v ->2 4 <@> return K ->5 2 <0> pushmark s ->3 - <1> ex-rv2sv sK/1 ->4 3 <#> gvsv[*x] s ->4 -e syntax OK
looks like
main::f: 3 <1> leavesub[1 ref] K/REFC,1 ->(end) - <@> lineseq KP ->5 1 <;> nextstate(main 1 -e:1) v ->2 - <@> ex-return K ->- - <0> ex-pushmark s ->- - <1> ex-rv2sv sK/1 ->- 2 <#> gvsv[*x] s ->3 -e syntax OK
which would be equivalent to
>perl -MO=Concise,f -e"sub f { $x }" main::f: 3 <1> leavesub[1 ref] K/REFC,1 ->(end) - <@> lineseq KP ->3 1 <;> nextstate(main 1 -e:1) v ->2 - <1> ex-rv2sv sK/1 ->- 2 <#> gvsv[*x] s ->3 -e syntax OK
Just curious. There's no speed penalty to leaving it in
5.8.8: Rate implicit explicit implicit 980/ms -- -0% explicit 984/ms 0% -- 5.10.0: Rate explicit implicit explicit 1000/ms -- -0% implicit 1004/ms 0% --
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Why isn't return removed from optree?
by chromatic (Archbishop) on Dec 29, 2008 at 08:29 UTC | |
by ikegami (Patriarch) on Dec 29, 2008 at 08:39 UTC | |
by ikegami (Patriarch) on Dec 29, 2008 at 08:45 UTC | |
by merlyn (Sage) on Dec 29, 2008 at 11:17 UTC | |
by ikegami (Patriarch) on Dec 29, 2008 at 20:33 UTC | |
|
Re: Why isn't return removed from optree?
by ccn (Vicar) on Dec 29, 2008 at 06:45 UTC | |
by ikegami (Patriarch) on Dec 29, 2008 at 06:56 UTC |