Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re^4: SQL like query over iterable in perl

by haukex (Archbishop)
on Mar 02, 2017 at 13:06 UTC ( [id://1183408]=note: print w/replies, xml ) Need Help??


in reply to Re^3: SQL like query over iterable in perl
in thread SQL like query over iterable in perl

I hope it's clear I wasn't being entirely serious or saying that my code was "better", it was just a lighthearted retort :-)

i would have to look up funny debug commands to tell for sure, but are $#$fields-1 and $fields->[-1] optimized or does the subtraction happen every loop

I'm not sure either, but I'd have to guess no, since the optimizer would have to know for certain that @fields won't change, and in a language as dynamic as Perl, that's probably very rarely the case, if ever. As for the debug command, I assume you're thinking of B::Deparse, invoked as perl -MO=Deparse script.pl, which would show, for example, constant folding.

I did a quick test with Benchmark and refactored out $fields->[-1] and $#$fields-1 to before the loop, and that gave a consistent but small speed increase of ~5% (although IIRC, in terms of Benchmark results that's still in the margin of error of being insignificant).

I didn't take missing fields into account because the OP was asking about objects, but you have a good point there, my code doesn't properly handle undef values (or an empty @$fields for that matter).

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others musing on the Monastery: (4)
As of 2024-04-23 22:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found