in reply to Re^5: How does CATCH_SET optimize efficiency?
in thread How does CATCH_SET optimize efficiency?
Why not set up a new runops loop directly in the first place?I'm not sure I understand you. When the tie magic code calls FETCH, it starts a new runops loop to execute the ops within the FETCH sub (but it doesn't do a JMPENV_PUSH). If the FETCH function doesn't do any eval-ly stuff, then that's it. If the FETCH does eval {}, then the first time pp_entertry is called, a second runops loop is started, and JMPENV_PUSH is done. The rest of the ops within that eval, and continuing outside that eval, are executed within the inner runops loop, including any ops within second and subsequent eval {}'s. Finally, when FETCH returns, two runops loops and a jump level are exited.
Dave.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^7: How does CATCH_SET optimize efficiency?
by PerlOnTheWay (Monk) on Dec 18, 2012 at 01:16 UTC | |
by dave_the_m (Monsignor) on Dec 18, 2012 at 12:39 UTC | |
by PerlOnTheWay (Monk) on Dec 19, 2012 at 08:18 UTC | |
by dave_the_m (Monsignor) on Dec 19, 2012 at 10:32 UTC |
In Section
Seekers of Perl Wisdom