in reply to A Luser's Benchmarking Tale

I believe labels have such poor performance because they're resolved at runtime!
my $label; LABEL: warn "label = $label\n"; $label = $label ? 'LAST': 'LABEL'; goto $label; LAST: warn "done, label = $label\n"; __END__ label = label = LABEL done, label = LAST
Of course, that means you can easily go to a different label determined by run-time conditions (as shown above). To quote Johan Cruyff "Every advantage has its disadvantage". ;-)

Liz

Replies are listed 'Best First'.
Re: Re: A Luser's Benchmarking Tale
by diotalevi (Canon) on Nov 25, 2003 at 20:05 UTC
    Ah. So a bare next and last would be able to use the block's optree targets and don't require the same overhead?