Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^5: $_ functions vs argument-using functions

by LanX (Canon)
on Sep 09, 2013 at 21:44 UTC ( #1053101=note: print w/ replies, xml ) Need Help??


in reply to Re^4: $_ functions vs argument-using functions
in thread $_ functions vs argument-using functions

Wow, thanks for the info!

( learned again something new in the universe of Perl's special cases... ;-)

update

so from a performance point of view there is no reason to prefer map f, 1..3 over map { g($_) } 1..3!

Cheers Rolf

( addicted to the Perl Programming Language)


Comment on Re^5: $_ functions vs argument-using functions
Select or Download Code
Re^6: $_ functions vs argument-using functions
by tobyink (Abbot) on Sep 09, 2013 at 22:40 UTC

    As I said, the block form does add a little overhead, because it creates a lexical scope. It's very minor though, so it's generally better to go with whatever you think is more readable.

    When you need to micro-optimize a tight loop that gets called millions or billions of times... that's when you start looking at removing unnecessary lexical scopes! The block forms of grep and map can be replaced with the expression forms; if/elsif/else chains can become ternary operator expressions; foreach blocks become statement modifiers; etc.

    use Moops; class Cow :rw { has name => (default => 'Ermintrude') }; say Cow->new->name

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (12)
As of 2014-08-20 15:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (118 votes), past polls